
加密解密
文章平均质量分 91
NM_IT
it爱好者
展开
-
AES 加密算法在 java AS JS中的实现_密码等的加密互解
三方只要在编码方式,key,vi中设置一样,就可以进行跨语言加密解密,首先是java ,Base64我这里是使用的org.apache.commons原创 2014-06-20 17:33:43 · 1053 阅读 · 0 评论 -
私钥、数字证书和可信证书颁发机构
私钥、数字证书和可信证书颁发机构可建立和验证服务器标识和信任。SSL 使用公钥加密技术进行身份验证。使用公钥加密时,将为一台服务器生成一个公钥和一个私钥。对于用公钥加密的数据,只能用相应的私钥解密;对于用私钥加密的数据,只能用相应的公钥解密。私钥受到妥善的保护,确保只有私钥的所有者才能解密用公钥加密的消息。公钥嵌入一个数字证书中,同时嵌入的还有描述公钥所有者的其他信息,如姓名、街道原创 2015-02-07 12:54:12 · 6001 阅读 · 0 评论 -
Java加密技术(一)——BASE64与单向加密算法MD5&SHA&MAC
加密解密,曾经是我一个毕业设计的重要组件。在工作了多年以后回想当时那个加密、解密算法,实在是太单纯了。 言归正传,这里我们主要描述Java已经实现的一些加密解密算法,最后介绍数字证书。 如基本的单向加密算法: BASE64 严格地说,属于编码格式,而非加密算法MD5(Message Digest algorithm 5,信息摘要算法)SHA(Secure Hash原创 2015-02-07 11:38:28 · 446 阅读 · 0 评论 -
Java加密技术(四)——非对称加密算法RSA
接下来我们介绍典型的非对称加密算法——RSA RSA 这种算法1978年就出现了,它是第一个既能用于数据加密也能用于数字签名的算法。它易于理解和操作,也很流行。算法的名字以发明者的名字命名:Ron Rivest, AdiShamir 和Leonard Adleman。 这种加密算法的特点主要是密钥的变化,上文我们看到DES只有一个密钥。相当于只有一把钥匙,如果这把钥原创 2015-02-07 11:40:41 · 428 阅读 · 0 评论 -
JAVA对数字证书的常用操作
一:需要包含的包 import java.security.*; import java.io.*; import java.util.*; import java.security.*; import java.security.cert.*; import sun.security.x509.* import java.se转载 2015-01-20 09:35:15 · 518 阅读 · 0 评论 -
Java加密技术(二)——对称加密算法DES&AES
接下来我们介绍对称加密算法,最常用的莫过于DES数据加密算法。 DES DES-Data Encryption Standard,即数据加密算法。是IBM公司于1975年研究成功并公开发表的。DES算法的入口参数有三个:Key、Data、Mode。其中Key为8个字节共64位,是DES算法的工作密钥;Data也为8个字节64位,是要被加密或被解密的数据;Mode为DES的工作方式,有两种:原创 2015-02-07 11:39:15 · 492 阅读 · 0 评论 -
Java加密技术(九)——初探SSL
在Java加密技术(八)中,我们模拟了一个基于RSA非对称加密网络的安全通信。现在我们深度了解一下现有的安全网络通信——SSL。 我们需要构建一个由CA机构签发的有效证书,这里我们使用上文中生成的自签名证书zlex.cer 这里,我们将证书导入到我们的密钥库。 Shell代码 keytool -import -alias www.zlex.原创 2015-02-07 11:45:18 · 583 阅读 · 0 评论 -
Java加密技术(十一)——双向认证
对于双向认证,做一个简单的描述。 服务器端下发证书,客户端接受证书。证书带有公钥信息,用于验证服务器端、对数据加密/解密,起到OSI五类服务的认证(鉴别)服务和保密性服务。 这只是单向认证,为什么?因为客户端可以验证服务器端,但服务器端不能验证客户端! 如果客户端也有这样一个证书,服务器端也就能够验证客户端,这就是双向认证了! 换言之,当你用银行的“U盾”之类的U盘与银行账原创 2015-02-07 11:47:06 · 33510 阅读 · 0 评论 -
Java加密技术——数字证书
在构建Java代码实现前,我们需要完成证书的制作。 1.生成keyStroe文件 在命令行下执行以下命令: Shell代码 keytool -genkey -validity 36000 -alias www.zlex.org -keyalg RSA -keystore d:\zlex.keystore 其中 -genkey表示生成密钥原创 2015-02-07 11:36:32 · 532 阅读 · 0 评论 -
Java加密技术(三)——PBE算法
除了DES,我们还知道有DESede(TripleDES,就是3DES)、AES、Blowfish、RC2、RC4(ARCFOUR)等多种对称加密方式,其实现方式大同小异,这里介绍对称加密的另一个算法——PBE PBE PBE——Password-based encryption(基于密码加密)。其特点在于口令由用户自己掌管,不借助任何物理媒体;采用随机数(这里我们叫做盐)杂凑原创 2015-02-07 11:40:10 · 494 阅读 · 0 评论 -
Keytool使用总结
Keytool 是一个Java 数据证书的管理工具 ,Keytool 将密钥(key)和证书(certificates)存在一个称为keystore的文件中。在keystore里,包含两种数据:(1)密钥实体(Key entity)——密钥(secret key)又或者是私钥和配对公钥(采用非对称加密) (2)可信任的证书实体(trusted certificate entri转载 2015-01-20 09:39:28 · 708 阅读 · 0 评论 -
Java加密技术(八)——数字证书
本篇的主要内容为Java证书体系的实现。 请大家在阅读本篇内容时先阅读 Java加密技术(四),预先了解RSA加密算法。 在构建Java代码实现前,我们需要完成证书的制作。 1.生成keyStroe文件 在命令行下执行以下命令: Shell代码 keytool -genkey -validity 36000 -alias www.zlex.or原创 2015-02-07 11:44:38 · 442 阅读 · 0 评论 -
Java加密技术(五)——非对称加密算法的由来DH
接下来我们分析DH加密算法,一种适基于密钥一致协议的加密算法。 DH Diffie-Hellman算法(D-H算法),密钥一致协议。是由公开密钥密码体制的奠基人Diffie和Hellman所提出的一种思想。简单的说就是允许两名用户在公开媒体上交换信息以生成"一致"的、可以共享的密钥。换句话说,就是由甲方产出一对密钥(公钥、私钥),乙方依照甲方公钥产生乙方密钥对(公钥、私钥)。以此为基线,作原创 2015-02-07 11:41:40 · 540 阅读 · 0 评论 -
Java加密技术——数字证书
在构建Java代码实现前,我们需要完成证书的制作。 1.生成keyStroe文件 在命令行下执行以下命令: Shell代码 keytool -genkey -validity 36000 -alias www.zlex.org -keyalg RSA -keystore d:\zlex.keystore原创 2014-06-20 18:32:08 · 819 阅读 · 0 评论 -
不同模式的AES加密
AES加解密算法的模式介绍分类: H.264 MPEG TV 2008-06-06 11:13 1633人阅读 评论(1) 收藏 举报一般的加密通常都是块加密,如果要加密超过块大小的数据,就需要涉及填充和链加密模式,文中提到的ECB和CBC等就是指链加密模式。这篇文档比较形象地介绍了AES加密算法中的一些模式转载过来。注意,还缺一种CTR的模式。同时在文章的最后原创 2014-06-21 11:02:05 · 1983 阅读 · 0 评论 -
java生成数字证书
★ 实例说明 本实例使用J2SDK提供的keytool工具用默认的密钥库和算法创建几个数字证书。★运行程序keytool程序运行时加上命令行参数–genkey即可。在命令行中输入“keytool –genkey”将自动使用默认的算法生成公钥和私钥,并以交互方式获得公钥持有者的信息。其交互过程如下,其中带下划线的字符为用户键盘输入的内容,其他为系统提示的内容原创 2014-12-01 14:14:45 · 674 阅读 · 0 评论 -
keytool用法及说明
1、生成密钥,并以证书文件保存keytool -genkey -alias bogus -keysize 512 -validity 3650 -keyalg RSA -dname "CN=bogus.com, OU=XXX CA, O=Bogus Inc, L=Stockholm, S=Stockholm, C=SE" -keypass boguspw -storepass bogu转载 2015-01-20 09:33:14 · 535 阅读 · 0 评论 -
java中Keytool的使用总结
以前用过几次这个东东,但每次都重新查询一次。本文原始出处是这里 。-----------------------------------------------------------Keytool 是一个Java 数据证书的管理工具 ,Keytool 将密钥(key)和证书(certificates)存在一个称为keystore的文件中 在keystore里,包含两种数据:转载 2015-02-07 10:43:06 · 637 阅读 · 0 评论 -
Java加密技术(六)——数字签名算法DSA
接下来我们介绍DSA数字签名,非对称加密的另一种实现。 DSA DSA-Digital Signature Algorithm 是Schnorr和ElGamal签名算法的变种,被美国NIST作为DSS(DigitalSignature Standard)。简单的说,这是一种更高级的验证方式,用作数字签名。不单单只有公钥、私钥,还有数字签名。私钥加密生成数字签名,公钥验证数据及签名。如果数据原创 2015-02-07 11:42:29 · 525 阅读 · 0 评论 -
Java加密技术(七)——非对称加密算法最高级ECC
ECC ECC-Elliptic Curves Cryptography,椭圆曲线密码编码学,是目前已知的公钥体制中,对每比特所提供加密强度最高的一种体制。在软件注册保护方面起到很大的作用,一般的序列号通常由该算法产生。 当我开始整理《Java加密技术(二)》的时候,我就已经在开始研究ECC了,但是关于Java实现ECC算法的资料实在是太少了,无论是国内还是国外的资料,无论是官方还原创 2015-02-07 11:43:29 · 578 阅读 · 0 评论 -
Java加密技术(十)——单向认证
在Java 加密技术(九)中,我们使用自签名证书完成了认证。接下来,我们使用第三方CA签名机构完成证书签名。 这里我们使用thawte提供的测试用21天免费ca证书。 1.要在该网站上注明你的域名,这里使用www.zlex.org作为测试用域名(请勿使用该域名作为你的域名地址,该域名受法律保护!请使用其他非注册域名!)。 2.如果域名有效,你会收到邮件要求你原创 2015-02-07 11:46:12 · 821 阅读 · 0 评论 -
Java加密技术(十二)——*.PFX(*.p12)&个人信息交换文件
今天来点实际工作中的硬通货! 与计费系统打交道,少不了用到加密/解密实现。为了安全起见,通过非对称加密交换对称加密密钥更是不可或缺。那么需要通过什么载体传递非对称算法公钥/私钥信息?数字证书是公钥的载体,而密钥库可以包含公钥、私钥信息。 JKS和PKCS#12都是比较常用的两种密钥库格式/标准。对于前者,搞Java开发,尤其是接触过HTTPS平台的朋友,并不陌生。JKS文件(通常为*.jk原创 2015-02-07 11:48:15 · 535 阅读 · 0 评论 -
配置 WebLogic 域的安全
以下部分描述如何设置 WebLogic 域的安全配置选项: 启用 WebLogic Server 域之间的信任 使用连接筛选器 使用 Java 容器授权合同 查看 MBean 特性 WebLogic Server 中的密码保护方式 保护用户帐户注意:上述部分适用于使用此版本的 WebLogic Server 中的安全功能的 WebLo原创 2015-02-07 12:55:31 · 7131 阅读 · 1 评论 -
https
我们先不了聊HTTP,HTTPS,我们先从一个聊天软件说起,我们要实现A能发一个hello消息给B:如果我们要实现这个聊天软件,本文只考虑安全性问题,要实现A发给B的hello消息包,即使被中间人拦截到了,也无法得知消息的内容如何做到真正的安全?这个问题,很多人马上就想到了各种加密算法,什么对称加密、非对称加密、DES、RSA、XX、噼里啪啦~而我想说,加密算法只是解决方案,我们首先要做的是理解我...转载 2018-03-20 16:19:00 · 308 阅读 · 0 评论