HOME 首页
SERVICE 服务产品
XINMEITI 新媒体代运营
CASE 服务案例
NEWS 热点资讯
ABOUT 关于我们
CONTACT 联系我们
创意岭
让品牌有温度、有情感
专注品牌策划15年

    pbkdf2(PBKDF2加密)

    发布时间:2023-04-14 12:07:04     稿源: 创意岭    阅读: 130        

    大家好!今天让创意岭的小编来大家介绍下关于pbkdf2的问题,以下是小编对此问题的归纳整理,让我们一起来看看吧。

    开始之前先推荐一个非常厉害的Ai人工智能工具,一键生成原创文章、方案、文案、工作计划、工作报告、论文、代码、作文、做题和对话答疑等等

    只需要输入关键词,就能返回你想要的内容,越精准,写出的就越详细,有微信小程序端、在线网页版、PC客户端

    官网:https://ai.de1919.com

    创意岭作为行业内优秀的企业,服务客户遍布全球各地,如需了解SEO相关业务请拨打电话175-8598-2043,或添加微信:1454722008

    本文目录:

    pbkdf2(PBKDF2加密)

    一、BIP39:助记词

    BIP39是SEED的生成算法.如果你用过比特币钱包应用,很可能它会为你生成一个助记符。这样的助记符可以用来替代私钥,并且可以被用于生成私钥。用“有意义的”助记词代替无意义的数字,也就是“密语种子”,密语种子更加便于记忆和抄录,它可以转化成适用于BIP32的“数字种子”。构造Script.ScriptType.P2PKH类型的钥匙串KeyChainGroup

    DeterministicSeed 第三个参数是密码,默认为空,试着自己加了密码也ok,总之不影响随机熵的创建。从SecureRandom创建随机熵

    对string集合进行加盐操作,salt随机,用PBKDF2SHA512加密算法加密.

    PBKDF2SHA512 助记词+盐进行2048次sha256每次产生的seed都是不同的!

    https://iancoleman.io/bip39/?#english 翻墙查看,把 mnemonic code 记录下来好好保存,就会是一个冷钱包(指不连网路的钱包,所以安全很多)。可以使用产生出来的 address 收送钱。

    二、助记词的生成原理

    别人的库多半都是只实现了部分功能,所以fork了人家的源码,在此基础上增加了实用功能,保证通过助记词恢复和对助记词的校验,避免了因随意输入助记词便可恢复成私钥的过程。原作者的实现并非十分高效,但接口很直观,该有的功能很全面,做法有很多,开源能使它更好。仅当学习。

    https://github.com/alphaqiu/mnemonic

    BIP39是助记词标准的实现,助记词是一个随机数的字序列,用来作为种子产生一个确定性的钱包。单词序列足以重新创建种子,然后再创建钱包和所有派生的密钥。一个实现带有助记词的确定性钱包应用程序在首次创建钱包时将向用户显示12到24个单词的序列。该单词序列是钱包备份,可用于恢复和重新创建相同或任何兼容的钱包应用程序中的所有密钥。记忆单词使用户更容易备份钱包,因为与随机数字序列相比,它们易于阅读和正确地转录。所有的助记词在这里可以查看:助记词词库。

    使用BIP39中定义的标准化过程,钱包自动生成助记词。钱包从一个熵源开始,添加一个校验和,然后将熵映射到一个单词列表,具体步骤如下:

    下表描述了初始熵长度(ENT),校验和长度(CS)和单词中生成的助记词(MS)的长度之间的关系。

    用户可以决定用密码来保护他们的助记符。如果不存在密码短语,则使用空字符串“”。

    助记词代表长度为128到256位的熵。然后使用熵通过使用密钥扩展函数PBKDF2来导出更长(512位)的种子。然后,所产生的种子用于构建确定性钱包并获得其密钥。

    密钥扩展功能有两个参数:助记词和盐(salt)。密钥扩展功能中的盐的目的是使得难以构建能够进行暴力攻击的查找表。在BIP-39标准中,salt具有另一个目的 - 它允许引入密码短语作为保护种子的额外安全因子。

    三、1. Crypto 加密算法

    Hash,音译为哈希,也叫散列函数、摘要算法。它是把任意长度的输入,通过散列算法变换成固定长度的输出,该输出就是散列值。

    常用的哈希算法有:

    MD5 信息摘要算法 (MD5 Message-Digest Algorithm),一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值,用于确保信息传输完整一致。

    SHA (Secure Hash Algorithm),即安全散列算法。散列算法又称杂凑算法或哈希算法,能将一定长度的消息计算出固定长度的字符串(又称消息摘要)。SHA包含5个算法,分别是SHA-1、SHA-224、SHA-256、SHA-384和SHA-512,后四者并称为SHA-2。

    循环冗余校验 (Cyclic redundancy check,通称“ CRC ”)是一种根据网络数据包或电脑文件等数据产生简短固定位数校验码的一种散列函数,主要用来检测或校验数据传输或者保存后可能出现的错误。生成的数字在传输或者存储之前计算出来并且附加到数据后面,然后接收方进行检验确定数据是否发生变化。一般来说,循环冗余校验的值都是32位的整数。

    AES ,高级加密标准(Advanced Encryption Standard),又称 Rijndael 加密法,是美国联邦政府采用的一种区块加密标准。

    MAC ,消息认证码(带密钥的 Hash 函数):密码学中,通信实体双方使用的一种验证机制,保证消息数据完整性的一种工具。构造方法由 M.Bellare 提出,安全性依赖于 Hash 函数,故也称带密钥的 Hash 函数。消息认证码是基于密钥和消息摘要所获得的一个值,可用于数据源发认证和完整性校验。

    PBKDF2 (Password-Based Key Derivation Function)是一个用来导出密钥的函数,常用于生成加密的密码。它的基本原理是通过一个伪随机函数(例如 HMAC 函数),把明文和一个盐值作为输入参数,然后重复进行运算,并最终产生密钥。如果重复的次数足够大,绿色的成本就会变得很高。而盐值的添加也会增加“彩虹表”攻击的难度。

    在需要使用 CryptoSwift 的地方将其 import 进来:

    欢迎留言讨论,有错误请指出,谢谢!

    Swift 开发学习交流,联系我 QQ:3500229193 入群,请备注“Swift 学习”!

    四、密码格式是什么?

    这样问不好回答,先来说明密码本身

    1:纯数字密码(这个好多,银行的,手机的)

    2:字母加数字密码(这个也好多,好多网站后台)

    3:字母加数字加特殊符号密码(这个也好多,好多网站后台)

    4:手势密码(网络或手机)

    5:指纹声音脸密码(大多门禁,也有手机)

    6:定位密码(大多智能家居,这些也算密码)

    7:随机密码(银行,卫星,军事等等)

    密码加密方式

    1:明文保存

    2:对称加密算法来保存

    3:MD5、SHA1等单向HASH算法

    4:PBKDF2算法

    5:bcrypt、scrypt等算

    6:以上各种组合

    7:矩阵密码

    怕说不完,太多了。

    以上就是关于pbkdf2相关问题的回答。希望能帮到你,如有更多相关问题,您也可以联系我们的客服进行咨询,客服也会为您讲解更多精彩的知识和内容。


    推荐阅读:

    stepback歌词大意(step by step歌词)

    pbf转百度云(百度网盘pdf转epub格式)

    chat.openai拒绝访问(cannot open clipboard-拒绝访问)

    酒店ota平台的运作和管理(酒店客控系统哪些品牌好)

    杭州美术馆怎么预约(杭州美术馆怎么预约参观)