Sodium 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
Sodium 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票
Sodium 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」 !
Sodium 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」「最积极运营项目」 !
Sodium 获得 2020 年度 OSC 中国开源项目评选「最积极运营项目」 !

软件简介

sodium 是高性能易用的加密库 libsodium  的 Ruby 封装版本。(libsodium 基于 Daniel J. Bernstein 的 NaCl开发). NaCl提供了构建高级加密工具的核心功能。

NaCl 通过严密的编码支架、改进的可用性和显著提升的性能,改善了现有库的安全性。

sodium 使用一个非常 thin 的 FFI 封装器,以面向对象的Ruby方式导出libsodium提供的函数。因此,它提供了直接使用libsodium C库的所有好处:简单、性能和安全。

这个库紧紧地集中在只提供现代的基元和操作上,给用户尽可能少的方法来射击自己的脚。虽然没有任何一个加密库可以防止所有类别的用户错误,但这个库至少试图将已知的、容易预防的用户错误类型的可能性降到最低,例如使用破损的基元、依赖非认证的加密模式,以及组成低级基元来执行已经有很好研究的高级操作的任务。

像OpenSSL这样的库包含了对太阳底下每一个加密基元、协议和操作的支持。这些被支持的功能中,有许多在密码学上是被打破的,只是为了让开发者能够保持与旧软件的兼容性而保留下来。这显然不是钠的目标。虽然我们将提供从任何被发现的弱点或破损的基元的迁移路径,但我们绝不会为了互操作性而引入已知的坏基元(如MD5或SHA-1)或容易搞砸的操作(如CBC模式)。

通过www.DeepL.com/Translator(免费版)翻译

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论 (0)

加载中
更多评论
暂无内容
2020/12/03 18:02

PHP的Sodium加密扩展函数了解

PHP的Sodium加密扩展函数了解 这是本次加密扩展系列的最后一篇文章,也是我们要学习了解的最后一个 PHP 加密扩展。Sodium 出现的目的也是为了代替 Mcrypt 这个原来的加密扩展。在 PHP7.2 之后,Mcrypt 已经被移除,在 PHP7.1 时就已经被标记为过时。不过,Sodium 扩展的应用也并不是很多,大部分情况下我们都会使用 OpenSSL 来进行加密操作,同时,Sodium 扩展提供的函数也非常多,所以,我们这篇文章只做了解即可。当然,最主要...

0
0
发表于运维专区
2019/02/12 18:47

Entangle 2.0 “Sodium”正式发布

自上次听到Entangle以来已经有一段时间,但今天标志着Entangle 2.0 “Sodium”发布。 Entangle 2.0将其GTK3工具包要求提升至GTK+ 3.22,对其Wayland支持进行了一些更新,提供了各种图像处理改进,以及从解决内存泄漏到处理其他代码问题的一些低级改进。 此版本中的更改包括: 需要gobject introspection >= 1.54 要求GTK3 >= 3.22 修复对libraw的依赖 修复photobox插件中的变量名称 记录一些缺少的键盘快捷键 修复直方图中的上限...

0
0
发表了博客
2019/02/12 21:56

Entangle 2.0 “Sodium”正式发布

Entangle是一款自由而开源的软件,可让您从Linux控制DSLR相机。 使用各种尼康和佳能数码单反相机,可以查看实时预览,自动下载图像,并通过USB连接将照片拍摄到相机。 自上次听到Entangle以来已经有一段时间,但今天标志着Entangle 2.0 “Sodium”发布。 Entangle 2.0将其GTK3工具包要求提升至GTK+ 3.22,对其Wayland支持进行了一些更新,提供了各种图像处理改进,以及从解决内存泄漏到处理其他代码问题的一些低级改进。 此版本...

0
0
发表了博客
2020/10/24 07:43

Suramin sodium salt苏拉明钠

  Suramin sodium salt (Suramin hexasodium salt) 是一种可逆的竞争性蛋白酪氨酸磷酸酶 (PTPases) 抑制剂。Suramin sodium salt 是有效的 sirtuins 抑制剂:SirT1 (IC50=297 nM),SirT2 (IC50=1.15 μM),SirT5 (IC50=22 μM)。Suramin sodium salt 是竞争性逆转录酶抑制剂 (DNA topoisomerase II: IC50=5 μM)。Suramin sodium salt 有效抑制 IP5K,并且是抗寄生虫 (antiparasitic),抗肿瘤和抗血管生成剂。 ...

0
0
发表了博客
2019/06/17 17:00

微信退款通知,退款回调数据解密.SHA256签名AEAD_AES_256_GCM解密

$xmlResult = file_get_contents("php://input");//获取微信的数据 $result = $this->xmlToArray($xmlResult);//将xml转成数组 // 将加密的数据解密,方法在下面 $reqInfo = $this->refund_decrypt($result['req_info']); /* * 退款通知解密 * @Author WangZhaoBo * @param $str 微信同步的加密串req_info * @param $key 商户key */ public function refund_decrypt($str) { $key = md5($this->appSecret); ...

0
0
发表了博客
2019/05/25 14:20

项目中使用libsodium扩展

前段时间研究了微信小微商户,地址:https://pay.weixin.qq.com/wiki/doc/api/xiaowei.php?chapter=19_11 其接口操作中需要下载证书针对返回的密文用 AEAD_AES_256_GCM 算法解密 其中用到了 string sodium_crypto_aead_aes256gcm_decrypt ( string $ciphertext , string $ad , string $nonce , string $key ) 这个函数 但是这个函数可能调用的时候会报错,那是因为使用这个函数需要开启 libsodium 扩展才能使用 官方文档上面对该...

0
0
2019/05/22 13:49

当构造方法参数过多时使用builder模式

静态工厂和构造方法都有一个限制:它们不能很好地扩展到很多可选参数的情景。请考虑一个代表包装食品上的营养成分标签的例子。这些标签有几个必需的属性——每次建议的摄入量,每罐的份量和每份卡路里 ,以及超过 20 个可选的属性——总脂肪、饱和脂肪、反式脂肪、胆固醇、钠等等。大多数产品都有非零值,只有少数几个可选属性。   应该为这样的类编写什么样的构造方法或静态工厂?传统上,程序员使用了可伸缩(telescoping c...

0
0
发表了博客
2019/08/05 11:36

Java 使用Builder解决构造函数参数过多的问题

原文:https://blog.csdn.net/michael_f2008/article/details/77715075 //Builder Pattern public class NutritionFacts{ public final int servingSize; public final int servings; public final int calories; public final int fat; public final int sodium; public final int carbohydrate; //静态内部类Builder public static class Builder{ //必选变量 ...

0
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
暂无内容
0 评论
0 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部