您好,欢迎来到12图资源库!分享精神,快乐你我!我们只是素材的搬运工!!
  • 首 页
  • 当前位置:首页 > 开发 > WEB开发 >
    Google 的 Tink 库让你丢掉手中成百上千页的密码学书籍
    时间:2018-09-04 12:16 来源:网络整理 作者:网络 浏览:收藏 挑错 推荐 打印

    9月15日技术沙龙 | 与来自京东金融、AWS、东华软件三位大咖探求精准快速运维!

    近日,谷歌在其安全博客中详细引见了其开源的一款多言语、跨平台加密开发库 Tink。

    Google 的 Tink 库让你丢掉手中成百上千页的密码学书籍

    不断以来,加密技术就是保护用户数据的有效手腕,但是加密技术触及到了十分通俗的密码学知识,开发者假设想要了解如何正确去实施密码学,这个进程将会破费他们少量时间去研讨目前积聚了数十年的学术文献。在当下高强度的开发任务下,不言而喻,通常开发者都难有这样富足的时间。这样就给产品的安全带来了致命要挟,怎样办呢?

    Google 为此开发了一款多言语、跨平台的加密软件库,用以协助外部开发人员提供安全的加密代码。谷歌引见,在外部,Tink 曾经被用于保护许多产品的数据,如 AdMob、Google Pay、Google Assistant、Firebase 与 Android Search App 等。Google 在两年前将 Tink 于 GitHub 上开源,此次借着其第一个支持云、Android 与 iOS 的 1.2.0 版本发布,谷歌为开发者引见了它的特性、意义与运用示例等外容。

    谷歌描画,Tink 旨在提供安全、易于正确运用且难以滥用的加密 API,它树立在现有安全相关的库之上,如 BoringSSL 和 Java Cryptography Architecture,但谷歌专门的团队 Project Wycheproof 发现了这些库中的一些弱点,Tink 停止了跟进,使之愈加安全。

    运用 Tink,许多常见的加密操作,如数据加密、数字签名等只需几行代码就可以完成,以下是运用 Java 中的 AEAD 接口加密和解密的 demo:

    import com.谷歌.crypto.tink.Aead; 

     

       import com.谷歌.crypto.tink.KeysetHandle; 

     

       import com.谷歌.crypto.tink.aead.AeadFactory; 

     

       import com.谷歌.crypto.tink.aead.AeadKeyTemplates; 

     

     

       // 1. Generate the key material. 

     

       KeysetHandle keysetHandle = KeysetHandle.generateNew( 

     

           AeadKeyTemplates.AES256_EAX); 

     

     

       // 2. Get the primitive. 

     

       Aead aead = AeadFactory.getPrimitive(keysetHandle); 

     

     

       // 3. Use the primitive. 

     

       byte[] plaintext = ...; 

     

       byte[] additionalData = ...; 

     

       byte[] ciphertext = aead.encrypt(plaintext, additionalData); 

    Tink 希望消弭尽能够多的潜在误用。例如,假设底层加密形式需求 nonce(密码学中只被运用一次的恣意或非重复的随机数),但重用 nonce 的话会产生安全成绩,那么这时 Tink 将不允许用户传递 nonce。

    Tink 的功用很多,大约有如下几个方面:

    可以安全抵御选择密文攻击,允许安全审计员和自动化工具快速发现那些与安全要求不婚配的代码。

    隔离了用于潜在风险操作的 API,例如从磁盘加载明文密钥。

    为密钥管理提供支持,包括密钥轮换和逐渐淘汰已弃用的密码。

    可以经过设计停止扩展:可以轻松添加自定义加密方案或外部密钥管理系统,以便与 Tink 的其它部分无缝协作。Tink 的任何部分都难以改换或移除,一切组件都是可组合的,并且可以以各种组合停止选择和组合。例如,假设只需求数字签名,则可以扫除对称密钥加密组件,以最大限制地增加运用顺序中的代码大小。

    这个开发库为广阔开发者带来了极大便利,假设你还没体验过,赶快去试试吧:https://github.com/谷歌/tink

    【编辑引荐】

    如今的顺序员是靠技术要工资吗?网友:不,是面试技术!

    逃离Google生态很难,但是能让你重获自在

    Google Chrome阅读器十岁了 谷歌宣布纪念活动

    35岁了,我如今慌得一批_技术栈微信半月刊第24期

    如何打破技术天花板?一定要看8月的这十篇抢手文章

    (责任编辑:admin)