首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏ICT售前新说

    密码算法发展及密码测评要求解读

    50310编辑于 2022-12-11
  • 来自专栏后端从入门到精通

    密码验证合格程序(算法)

    /** * 021Abc9Abc1 * 1.长度超过8位 * 2.包括大小写字母.数字.其它符号,以上四种至少三种 * 3.不能有长度大于2的包含公共元素的子串重复 (注:其他符号不含空格或换行) */ public static void main(String[] args) throws Exception { BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

    1.5K20编辑于 2022-12-14
  • 来自专栏密码学基础

    密码学基础——DES算法

    前面的密码学基础——密码学文章中介绍了密码学相关的概念,其中简要地对称密码体制(也叫单钥密码体制、秘密密钥体制)进行了解释,我们可以知道单钥体制的加密密钥和解密密钥相同,单钥密码分为流密码和分组密码 分组密码(Block Cipher):将明文消息分组(含有多个字符),逐组地进行加密。 那么本文要介绍的DES算法属于分组密码。 (1)结构原理 加密算法 加密算法的输入是分组长为2w的明文和一个密钥K。 不同的分组密码算法在轮函数的具体设计上会有所不同,但目的都是为了增加密码的安全性。 密钥扩展算法的设计需要保证子密钥的安全性和独立性,以防止攻击者通过分析子密钥来破解密码。例如,在 DES 算法中,56 位的密钥会被扩展成 16 个 48 位的子密钥,用于 16 轮的迭代。

    41610编辑于 2026-01-13
  • 来自专栏密码学基础

    密码学基础——AES算法

    为了寻找更安全、高效的加密算法,NIST 于 1997 年发起了 AES 算法征集活动,最终比利时密码学家 Joan Daemen 和 Vincent Rijmen 设计的 Rijndael 算法脱颖而出 基本要求:AES应该像DES和TDES那样是一个块加密方法,并且至少像TDES一样安全,但是其软件实现应该比TDES更加有效 NIST指定AES必须:公开算法;分组大小为128比特的分组密码,支持密钥长度为 Joan Daemen 和 Vincent Rijmen 提出的密码算法Rijndael NIST于2001年11月26日发布于FIPS PUB 197,并在2002年5月26日成为有效的标准 AES算法与 3.灵活性好 AES 可以工作在多种模式下,如 ECB(电子密码本模式)、CBC(密码块链接模式)、CFB(密码反馈模式)、OFB(输出反馈模式)和 CTR(计数器模式)等,以满足不同的应用场景需求 3.2加密过程 AES 是一种分组密码算法,它将明文数据分成固定长度的块(通常为 128 位),然后对每个块进行加密处理。

    1.3K10编辑于 2026-01-13
  • 来自专栏软件工程师Michael

    加密算法实例:替换密码

    ) else: decrypted_text.append(ciphertext[i]) return ''.join(decrypted_text)以上加密算法

    45410编辑于 2025-02-11
  • 来自专栏code人生

    常见密码算法简介

    常见对称加解密算法 对称加密算法是一种加密算法,使用相同的密钥来加密和解密数据。这些算法在保护数据安全性方面起着重要作用。 1.4 Rivest Cipher 4 (RC4) •简介: RC4 是一种流密码,广泛应用于安全协议、无线网络和互联网应用程序中。 这些非对称加密算法在不同的应用场景中有不同的优势和用途,您可以根据具体需求选择合适的算法 3. 3.5 bcrypt bcrypt是一种用于密码存储的散列算法,特别适用于存储用户密码。它采用了“盐”(salt)的概念,使相同的密码在不同用户之间有不同的散列值,提高了安全性。 密码学常见应用 密码算法在许多领域有广泛的应用,包括: •数据加密: 用于加密敏感数据,以保护数据的隐私和安全。•数字签名: 用于确保数据的完整性、认证和非否认性,常见于电子合同和电子邮件安全中。

    97930编辑于 2023-10-25
  • 来自专栏OI

    YbtOJ 772「分块算法密码破译

    YbtOJ 772「分块算法密码破译 题目链接:YbtOJ #772 你有一个 n 列,无穷行的表格,每个格子上都有一个正整数,第 i 行第 j 列的数为 a_{i,j}。

    1.1K30编辑于 2022-09-19
  • 来自专栏小樱的经验随笔

    移位密码原理及算法实现

    移位密码算法原理   移位密码又称为移位代换密码,是单表代换密码中的一种,它的加解密过程可以用以下方式表示:   C=Ek(s)=(s+k) mod n,   S=Dk(c)=(c-k) mod n, 其中,c表示密文字符,s表示明文字符,k表示移位的数字,n表示代换字符集的字符总个数,当字符集为26个字母时的移位算法就是凯撒密码。 移位密码算法实现 1 #include <iostream> 2 #include <fstream> 3 #include <cstdlib> 4 using namespace std;

    2.3K80发布于 2018-04-09
  • 来自专栏全栈技术

    密码加密之消息摘要算法

    一般来说,都应该使用成熟的算法,而不需要自行设计算法! 在实现密码加密时,不要使用任何加密算法,因为所有加密算法在设计时就已经决定了它是可逆向运算的,也就是说“所有的加密算法都可以解密”! 加密算法的主要应用领域只是“保障传输过程的安全”,并不保证“存储数据的安全”。 推荐使用消息摘要算法密码进行加密并存储,因为所有的消息摘要算法都是不可逆向运算的。 同时,在实际应用中,如果是使用消息摘要算法密码进行“加密”时,用户提交的原始密码其实是有限的种类(允许使用的只有数字、字母、符号,且通常会限制长度),就不存在上述的“无限对应有限”的现象,在“有限对应有限 这样来看,使用消息摘要算法用于“密码加密”的数据处理是安全有效的! 在实际设计项目时,为了最大化保障用户密码的安全,应该: 要求用户使用安全强度更高的密码; 对密码进行循环加密; 对密码进行“加盐”处理; 选取位数更长的摘要算法; 综合以上做法。

    91910发布于 2021-08-23
  • 依托独立第三方运营与国产密码算法,构建金融行业全链路安全可信体系

    主导制定国家安全启动标准与自主签名体系 CFCA作为具备运营资质的独立第三方机构,依托庞大的证书发放量优势与第三方作证级(电子签名法)的权威定位,通过聚合核验源与自有数据,构建了基于国产密码算法的安全启动基础设施 RSA算法。 全链路国产化覆盖: 实现了“服务器 + BIOS + OS + 国密算法SM2”的全流程国产自主可控。 核心环境量化验证结论: 场景一(纯国产化链路): 基于 ARM 架构,采用 国密SM2 签名算法,配合 昆仑(适配修改) BIOS 与 openEuler 操作系统,安全启动校验 通过。 场景二(国际算法兼容): 基于 ARM 架构,采用 国际RSA 签名算法,配合 昆仑(未修改) BIOS 与 openEuler 操作系统,安全启动校验 通过。

    14410编辑于 2026-05-30
  • 来自专栏全栈程序员必看

    暴力激活成功教程密码算法-JS

    md5加密算法 var getMd5 = function (string) { function RotateLeft(lValue, iShiftBits) {

    1K10编辑于 2022-09-23
  • 来自专栏硬核项目经理的专栏

    PHP密码散列算法的学习

    PHP密码散列算法的学习 不知道大家有没有看过 Laravel 的源码。在 Laravel 源码中,对于用户密码的加密,使用的是 password_hash() 这个函数。 这个函数是属于 PHP 密码散列算法扩展中所包含的函数,它是集成在 PHP 源码中的扩展,并且还是 PHP 官方所推荐的一种密码加密方式。那么它有什么好处呢? 查看密码散列函数的加密算法 首先,我们还是看看当前环境中所支持的 password_hash() 算法。 验证密码散列数据格式是否一致 有的时候,我们想要升级当前的密码强度,比如将密码循环次数增加,而数据库中新老算法密码混杂着记录在一起,这时应该怎么办呢? 也就是说,如果算法和选项一致的话,那么这个密码是不需要重新 Hash 的,当然返回的就是 false 啦,而算法或选项有不一致的地方的话,这个密码就是需要重新 Hash 的,返回的就是 true 了。

    2.2K10发布于 2020-11-25
  • 来自专栏渔夫

    算法-唯一莫尔斯密码

    https://blog.csdn.net/li_xunhuan/article/details/90202659 题目描述: 国际摩尔斯密码定义一种标准编码方式 为了方便,所有26个英文字母对应摩尔斯密码表如下: [".-","-…","-.-.","-…",".","…-.","–.","…","…",".—","-.-",".-…","–","-.","—" ,".–.","–.-",".-.","…","-","…-","…-",".–","-…-","-.–","–…"] 给定一个单词列表,每个单词可以写成每个字母对应摩尔斯密码的组合。 3.简单说明一下两个遍历: 1)第一层是对字符串数组的遍历,String[] words是由多个字符串构成的,我们对字符串一个一个解决,所以需要遍历 2)第二层遍历是由于摩尔密码在HashMap中Key

    48520发布于 2019-07-31
  • 椭圆曲线密码学(ECC)算法

    椭圆曲线密码学解释:从网络安全到加密货币,适用于现代网络安全的高效公钥加密。椭圆曲线密码术 (ECC) 是一种强大而高效的公钥密码术,与传统方法相比,它以较小的密钥大小提供强大的安全性。 椭圆曲线的主要性质:关于 x 轴对称非奇异(无尖点或自相交)曲线最多与每条垂直线相交三点ECC算法的应用安全通信:用于 TLS/SSL 等协议进行加密的网络通信。 数字签名:用于各种数字签名方案,例如 ECDSA(椭圆曲线数字签名算法)。加密货币:许多加密货币,包括比特币和以太坊,都使用 ECC 进行密钥生成和数字签名。 ECC算法的工作原理ECC 利用椭圆曲线的数学特性来创建安全的加密系统。以下是该过程的简化说明:选择一条椭圆曲线和曲线上的一点作为生成点(G)。选择一个私钥(一个随机整数)。 ECC算法的优势密钥长度更小:ECC 提供与 RSA 同等的安全性,但密钥长度却小得多。例如,256 位 ECC 密钥提供与 3072 位 RSA 密钥相当的安全性。

    1.9K10编辑于 2024-12-10
  • 来自专栏TechBlog

    python实现公钥密码ElGamal算法

    m = decrypt(t, ephemeral_key, d, p) print('Plaintext:\nm:', m) 受于文本篇幅原因,本文相关算法实现工程例如环境及相关库,无法展示出来 python实现公钥密码ElGamal算法工程文件

    63720编辑于 2022-07-20
  • 国产DevOps平台Gitee:破解企业数字化转型的协同密码

    国产DevOps平台Gitee:破解企业数字化转型的协同密码当全球数字化浪潮以每年12.5%的速度席卷各行业时,中国企业正面临前所未有的协作效率挑战。 通过专利技术的冲突检测算法,支持200人以上团队同时进行代码提交而不产生版本混乱。其独有的"代码热度雷达"功能,能可视化呈现各模块开发活跃度,帮助管理者精准识别瓶颈。 更关键的是其与国产化技术栈的深度适配——统信UOS、龙芯架构、华为鲲鹏等自主可控技术均能实现开箱即用的集成体验。 这种生态优势在近期某央企的国产化替代项目中表现尤为突出,Gitee凭借对信创体系的完整支持,击败多家国际厂商中标千万级订单。安全合规性成为Gitee撬动关键行业的杠杆。 平台不仅获得公安部三级等保认证,更创新性地推出"代码保险箱"功能,支持国密算法加密的代码片段级权限控制。在某省会城市政务云项目中,这套机制帮助客户通过严格的等保2.0三级测评。

    19910编辑于 2026-01-26
  • 来自专栏绿盟科技研究通讯

    区块链密码基础之签名算法(一)

    比特币采用的是椭圆区块签名算法,私钥是一个数字,通常随机产生。此处需要注意,需要产生一个熵比较大的随机数,推荐采用密码算法中的随机数生成算法。 4.4 国密SM2替代 SM2是国家密码管理局于2010年12月17日发布的椭圆曲线公钥密码算法,其中包含5个部分,总则、数字签名算法、密钥交换协议、公钥加密算法、参数定义。 4.4.1 SM2的参数选择 SM2选择的曲线方程和参数如下: 4.4.2 SM2签名算法 使用上面SM2椭圆曲线公钥密码算法推荐参数,提出了SM2签名算法可满足多种密码应用中的身份鉴别和数据完整性 它同时使用了SM3密码杂凑算法,国家密码管理局批准的随机数发生器。 GB/T 32918.2-2016 信息安全技术 SM2椭圆曲线公钥密码算法[S].

    2.8K11编辑于 2022-11-14
  • 来自专栏密码学基础

    密码学基础——SM4算法

    一、国密SM系列算法概述 国密算法(SM系列)是由中国国家密码管理局制定的一系列密码算法标准,旨在保障信息安全,推动密码技术的自主可控。 以下是主要SM算法的分类及简介: SM1、SM4、SM5、SM6、SM7、SM8、ZUC祖冲之密码:对称密码, SM2、SM9:公钥密码 (非对称加密) SM3:属于单向散列函数。 SM9:基于身份基加密(IBE)或叫标识密码算法 目前我国主要使用公开的SM2、SM3、SM4作为商用密码算法。 其中SM1、SM7算法不公开,调用该算法时,需要通过加密芯片的接口进行调用 二、SM4算法 2.1算法背景 SM4算法是用于WAPI的分组密码算法,是2006年我国国家密码管理局公布的国内第一个商用密码算法 安全性:SM4算法的安全性经过严格评估,能够抵御差分攻击、线性攻击等常见密码分析方法。 2.3 基本部件 SM4密码算法的基本运算有模2加和循环移位。

    2.1K20编辑于 2026-01-13
  • 来自专栏小樱的经验随笔

    单表代替密码原理及算法实现

        要了解单表替代密码就得先了解替代密码,在这里我就做一下简单的介绍:       替代是古典密码中用到的最基本的处理技巧之一 。       替代密码是指先建立一个替换表,加密时将需要加密的明文依次通过查表,替换为相应的字符,明文字符被逐个替换后,生成无任何意义的字符串,即密文,替代密码的密钥就是其替换表。       根据密码算法加解密时使用替换表多少的不同,替代密码又可分为单表替代密码和多表替代密码。       单表替代密码密码算法加解密时使用一个固定的替换表。 单表替代密码又可分为一般单表替代密码、移位密码、仿射密码、密钥短语密码。       这里讲单表替代密码的直接攻击。 算法实现 1 #include <iostream> 2 #include <fstream> 3 #include <cstdlib> 4 using namespace std; 5 const

    4.2K60发布于 2018-04-09
  • 来自专栏刘君君

    很方便的密码加密算法BCrypt

    摘要:用户表的密码一般都不是使用明文,使用明文坏处可以参考之前CSDN数据库被黑导致用户密码泄露造成的影响。 虽然使用明文也有一定的方便之处(毕竟现在的加密都是单向的,比如客户打电话问密码、老大或者上级问密码),但是我们完全可以根据用户提供的其他信息(比如密保让客户自己输入密码进行更改而不是直接告诉用户密码), 无论怎么样明文存储密码的坏处一定大于好处。 下面将介绍使用Spring Security时候遇到的默认密码加密算法BCrypt: 正文: BCrypt算法将salt随机并混入最终加密后的密码,验证时也无需单独提供之前的salt,从而无需单独处理 log_rounds); rs.append("$"); encode_base64(rnd, rnd.length, rs); return rs.toString(); } 下面是我整理的一套BCrypt算法源码

    5.3K50发布于 2018-05-21
领券