密码编码
此页面列出了用于密码操作的实现的“编码规则”,更一般地,涉及涉及秘密或敏感值的操作。
此页面上的规则是一般建议和编写更安全代码的最佳做法,但可能不适用于所有语言,可能就语言,操作系统或库的最新版本而言不是最新的,当然编写安全代码还不够。 尽管我们建议不要编写自己的C加密组件,但它专注于低级(阅读:C)实现。 欢迎提出请求以改进当前内容或添加新的“规则”。
大多数内容来自“加密编码标准”,该标准最初由@veorq在cryptocoding.net上建立,并由于许多贡献者而得以创建。
目录
问题
解决方案
防止安全和不安全的API之间的混淆
问题
不好的解决方案
解决方案
避免在同一API层中混合使用加密基元的安全级别和抽象级别
问题
解决方案
提供高级API
尽可能避免使用低级API
清楚地区分高级API和低级API
使用无符号字节表示二进制数据
问题
解决方案
清除秘密