- 浏览: 4402818 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (163)
- 职场 && 心情 (22)
- Java/Basic (17)
- Java/Compression (7)
- Java/Security (20)
- Java/Maven (3)
- Java/Cache (11)
- Eclipse (4)
- Spring (19)
- ORM/Hibernate (2)
- ORM/iBatis (3)
- DB/NoSQL (11)
- DB/MySQL (7)
- DB/MS SQL Server (4)
- OS/Linux (11)
- OS/Mac (7)
- C/C++ (4)
- Server Architecture/Basic (13)
- Server Architecture/Distributed (17)
- Moblie/Andriod (2)
- WebService (3)
- Objective-C (1)
- Html (1)
- 设计模式 (1)
- Scala (0)
- Kafka (1)
最新评论
-
w47_csdn:
证书安装:在"浏览"选项中选择" ...
Java加密技术(九)——初探SSL -
w47_csdn:
spiritfrog 写道你好,我按照你的步骤,tomcat中 ...
Java加密技术(九)——初探SSL -
liuyachao111:
11楼说的对 用@ControllerAdvicepublic ...
Spring 注解学习手札(八)补遗——@ExceptionHandler -
irayslu:
作者你好, 我把你的源码放在jdk6, jdk7 中运行正常, ...
Java加密技术(五)——非对称加密算法的由来DH -
夏季浅忆-卖小子:
为什么不能解压rar格式的压缩包呢
Java压缩技术(三) ZIP解压缩——Java原生实现
在Java 加密技术(九)中,我们使用自签名证书完成了认证。接下来,我们使用第三方CA签名机构完成证书签名。
这里我们使用thawte提供的测试用21天免费ca证书。
1.要在该网站上注明你的域名,这里使用www.zlex.org作为测试用域名(请勿使用该域名作为你的域名地址,该域名受法律保护!请使用其他非注册域名!)。
2.如果域名有效,你会收到邮件要求你访问https://www.thawte.com/cgi/server/try.exe获得ca证书。
3.复述密钥库的创建。
在这里我使用的密码为 123456
控制台输出:
4.通过如下命令,从zlex.keystore中导出CA证书申请。
5.将上述文件内容拷贝到https://www.thawte.com/cgi/server/try.exe中,点击next,获得回应内容,这里是p7b格式。
内容如下:
6.将由CA签发的证书导入密钥库。
在这里我使用的密码为 123456
控制台输出:
7.域名定位
将域名www.zlex.org定位到本机上。打开C:\Windows\System32\drivers\etc\hosts文件,将www.zlex.org绑定在本机上。在文件末尾追加127.0.0.1 www.zlex.org。现在通过地址栏访问http://www.zlex.org,或者通过ping命令,如果能够定位到本机,域名映射就搞定了。
8.配置server.xml
将文件zlex.keystore拷贝到tomcat的conf目录下,重新启动tomcat。访问https://www.zlex.org/,我们发现联网有些迟钝。大约5秒钟后,网页正常显示,同时有如下图所示:
浏览器验证了该CA机构的有效性。
打开证书,如下图所示:
调整测试类:
再次执行,验证通过!
由此,我们了基于SSL协议的认证过程。测试类的testHttps方法模拟了一次浏览器的HTTPS访问。
相关链接:
Java加密技术(一)——BASE64与单向加密算法MD5&SHA&MAC
Java加密技术(二)——对称加密DES&AES
Java加密技术(三)——PBE算法
Java加密技术(四)——非对称加密算法RSA
Java加密技术(五)——非对称加密算法的由来
Java加密技术(六)——数字签名算法DSA
Java加密技术(七)——非对称加密算法最高ECC
Java加密技术(八)——数字证书
Java加密技术(九)——初探SSL
Java加密技术(十)——单向认证
Java加密技术(十一)——双向认证
Java加密技术(十二)——*.PFX(*.p12)&个人信息交换文件
今天看到你的博客,就买了这本书,支持下
----------------------------------------------
定 价:¥89.00
京 东 价:¥70.50(8.0折)
收版税,收版税!!!
完整的实现,相关细节都在《Java加密与解密的艺术》书中!~
收版税,收版税!!!
https://www.thawte.com/cgi/server/try.exe 目前已经不支持这种测试认证了。去年还可以,关注我的书([url= http://snowolf.iteye.com/blog/616462]《Java加密与解密的艺术》[/url])中的另一种方式!
这里不能导入啊?我的是 JDK1.6 update14
呵呵,你也不差,博客里的帖子也有不少可以学习的内容!
这里我们使用thawte提供的测试用21天免费ca证书。
1.要在该网站上注明你的域名,这里使用www.zlex.org作为测试用域名(请勿使用该域名作为你的域名地址,该域名受法律保护!请使用其他非注册域名!)。
2.如果域名有效,你会收到邮件要求你访问https://www.thawte.com/cgi/server/try.exe获得ca证书。
3.复述密钥库的创建。
keytool -genkey -validity 36000 -alias www.zlex.org -keyalg RSA -keystore d:\zlex.keystore
在这里我使用的密码为 123456
控制台输出:
输入keystore密码: 再次输入新密码: 您的名字与姓氏是什么? [Unknown]: www.zlex.org 您的组织单位名称是什么? [Unknown]: zlex 您的组织名称是什么? [Unknown]: zlex 您所在的城市或区域名称是什么? [Unknown]: BJ 您所在的州或省份名称是什么? [Unknown]: BJ 该单位的两字母国家代码是什么 [Unknown]: CN CN=www.zlex.org, OU=zlex, O=zlex, L=BJ, ST=BJ, C=CN 正确吗? [否]: Y 输入<tomcat>的主密码 (如果和 keystore 密码相同,按回车): 再次输入新密码:
4.通过如下命令,从zlex.keystore中导出CA证书申请。
keytool -certreq -alias www.zlex.org -file d:\zlex.csr -keystore d:\zlex.keystore -v你会获得zlex.csr文件,可以用记事本打开,内容如下格式:
-----BEGIN NEW CERTIFICATE REQUEST----- MIIBnDCCAQUCAQAwXDELMAkGA1UEBhMCQ04xCzAJBgNVBAgTAkJKMQswCQYDVQQHEwJCSjENMAsG A1UEChMEemxleDENMAsGA1UECxMEemxleDEVMBMGA1UEAxMMd3d3LnpsZXgub3JnMIGfMA0GCSqG SIb3DQEBAQUAA4GNADCBiQKBgQCR6DXU9Mp+mCKO7cv9JPsj0n1Ec/GpM09qvhpgX3FNad/ZWSDc vU77YXZSoF9hQp3w1LC+eeKgd2MlVpXTvbVwBNVd2HiQPp37ic6BUUjSaX8LHtCl7l0BIEye9qQ2 j8G0kak7e8ZA0s7nb3Ymq/K8BV7v0MQIdhIc1bifK9ZDewIDAQABoAAwDQYJKoZIhvcNAQEFBQAD gYEAMA1r2fbZPtNx37U9TRwadCH2TZZecwKJS/hskNm6ryPKIAp9APWwAyj8WJHRBz5SpZM4zmYO oMCI8BcnY2A4JP+R7/SwXTdH/xcg7NVghd9A2SCgqMpF7KMfc5dE3iygdiPu+UhY200Dvpjx8gmJ 1UbH3+nqMUyCrZgURFslOUY= -----END NEW CERTIFICATE REQUEST-----
5.将上述文件内容拷贝到https://www.thawte.com/cgi/server/try.exe中,点击next,获得回应内容,这里是p7b格式。
内容如下:
-----BEGIN PKCS7----- MIIF3AYJKoZIhvcNAQcCoIIFzTCCBckCAQExADALBgkqhkiG9w0BBwGgggWxMIID EDCCAnmgAwIBAgIQA/mx/pKoaB+KGX2hveFU9zANBgkqhkiG9w0BAQUFADCBhzEL MAkGA1UEBhMCWkExIjAgBgNVBAgTGUZPUiBURVNUSU5HIFBVUlBPU0VTIE9OTFkx HTAbBgNVBAoTFFRoYXd0ZSBDZXJ0aWZpY2F0aW9uMRcwFQYDVQQLEw5URVNUIFRF U1QgVEVTVDEcMBoGA1UEAxMTVGhhd3RlIFRlc3QgQ0EgUm9vdDAeFw0wOTA1Mjgw MDIxMzlaFw0wOTA2MTgwMDIxMzlaMFwxCzAJBgNVBAYTAkNOMQswCQYDVQQIEwJC SjELMAkGA1UEBxMCQkoxDTALBgNVBAoTBHpsZXgxDTALBgNVBAsTBHpsZXgxFTAT BgNVBAMTDHd3dy56bGV4Lm9yZzCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA keg11PTKfpgiju3L/ST7I9J9RHPxqTNPar4aYF9xTWnf2Vkg3L1O+2F2UqBfYUKd 8NSwvnnioHdjJVaV0721cATVXdh4kD6d+4nOgVFI0ml/Cx7Qpe5dASBMnvakNo/B tJGpO3vGQNLO5292JqvyvAVe79DECHYSHNW4nyvWQ3sCAwEAAaOBpjCBozAMBgNV HRMBAf8EAjAAMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjBABgNVHR8E OTA3MDWgM6Axhi9odHRwOi8vY3JsLnRoYXd0ZS5jb20vVGhhd3RlUHJlbWl1bVNl cnZlckNBLmNybDAyBggrBgEFBQcBAQQmMCQwIgYIKwYBBQUHMAGGFmh0dHA6Ly9v Y3NwLnRoYXd0ZS5jb20wDQYJKoZIhvcNAQEFBQADgYEATPuxZbtJJSPmXvfrr1yz xqM06IwTZ6UU0lZRG7I0WufMjNMKdpn8hklUhE17mxAhGSpewLVVeLR7uzBLFkuC X7wMXxhoYdJZtNai72izU6Rd1oknao7diahvRxPK4IuQ7y2oZ511/4T4vgY6iRAj q4q76HhPJrVRL/sduaiu+gYwggKZMIICAqADAgECAgEAMA0GCSqGSIb3DQEBBAUA MIGHMQswCQYDVQQGEwJaQTEiMCAGA1UECBMZRk9SIFRFU1RJTkcgUFVSUE9TRVMg T05MWTEdMBsGA1UEChMUVGhhd3RlIENlcnRpZmljYXRpb24xFzAVBgNVBAsTDlRF U1QgVEVTVCBURVNUMRwwGgYDVQQDExNUaGF3dGUgVGVzdCBDQSBSb290MB4XDTk2 MDgwMTAwMDAwMFoXDTIwMTIzMTIxNTk1OVowgYcxCzAJBgNVBAYTAlpBMSIwIAYD VQQIExlGT1IgVEVTVElORyBQVVJQT1NFUyBPTkxZMR0wGwYDVQQKExRUaGF3dGUg Q2VydGlmaWNhdGlvbjEXMBUGA1UECxMOVEVTVCBURVNUIFRFU1QxHDAaBgNVBAMT E1RoYXd0ZSBUZXN0IENBIFJvb3QwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGB ALV9kG+Os6x/DOhm+tKUQfzVMWGhE95sFmEtkMMTX2Zi4n6i6BvzoReJ5njzt1LF cqu4EUk9Ji20egKKfmqRzmQFLP7+1niSdfJEUE7cKY40QoI99270PTrLjJeaMcCl +AYl+kD+RL5BtuKKU3PurYcsCsre6aTvjMcqpTJOGeSPAgMBAAGjEzARMA8GA1Ud EwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEEBQADgYEAgozj7BkD9O8si2V0v+EZ/t7E fz/LC8y6mD7IBUziHy5/53ymGAGLtyhXHvX+UIE6UWbHro3IqVkrmY5uC93Z2Wew A/6edK3KFUcUikrLeewM7gmqsiASEKx2mKRKlu12jXyNS5tXrPWRDvUKtFC1uL9a 12rFAQS2BkIk7aU+ghYxAA== -----END PKCS7-----将其存储为zlex.p7b
6.将由CA签发的证书导入密钥库。
keytool -import -trustcacerts -alias www.zlex.org -file d:\zlex.p7b -keystore d:\zlex.keystore -v
在这里我使用的密码为 123456
控制台输出:
输入keystore密码: 回复中的最高级认证: 所有者:CN=Thawte Test CA Root, OU=TEST TEST TEST, O=Thawte Certification, ST=FOR TESTING PURPOSES ONLY, C=ZA 签发人:CN=Thawte Test CA Root, OU=TEST TEST TEST, O=Thawte Certification, ST=FOR TESTING PURPOSES ONLY, C=ZA 序列号:0 有效期: Thu Aug 01 08:00:00 CST 1996 至Fri Jan 01 05:59:59 CST 2021 证书指纹: MD5:5E:E0:0E:1D:17:B7:CA:A5:7D:36:D6:02:DF:4D:26:A4 SHA1:39:C6:9D:27:AF:DC:EB:47:D6:33:36:6A:B2:05:F1:47:A9:B4:DA:EA 签名算法名称:MD5withRSA 版本: 3 扩展: #1: ObjectId: 2.5.29.19 Criticality=true BasicConstraints:[ CA:true PathLen:2147483647 ] ... 是不可信的。 还是要安装回复? [否]: Y 认证回复已安装在 keystore中 [正在存储 d:\zlex.keystore]
7.域名定位
将域名www.zlex.org定位到本机上。打开C:\Windows\System32\drivers\etc\hosts文件,将www.zlex.org绑定在本机上。在文件末尾追加127.0.0.1 www.zlex.org。现在通过地址栏访问http://www.zlex.org,或者通过ping命令,如果能够定位到本机,域名映射就搞定了。
8.配置server.xml
<Connector keystoreFile="conf/zlex.keystore" keystorePass="123456" truststoreFile="conf/zlex.keystore" truststorePass="123456" SSLEnabled="true" URIEncoding="UTF-8" clientAuth="false" maxThreads="150" port="443" protocol="HTTP/1.1" scheme="https" secure="true" sslProtocol="TLS" />
将文件zlex.keystore拷贝到tomcat的conf目录下,重新启动tomcat。访问https://www.zlex.org/,我们发现联网有些迟钝。大约5秒钟后,网页正常显示,同时有如下图所示:
浏览器验证了该CA机构的有效性。
打开证书,如下图所示:
调整测试类:
import static org.junit.Assert.*; import java.io.DataInputStream; import java.io.InputStream; import java.net.URL; import javax.net.ssl.HttpsURLConnection; import org.junit.Test; /** * * @author 梁栋 * @version 1.0 * @since 1.0 */ public class CertificateCoderTest { private String password = "123456"; private String alias = "www.zlex.org"; private String certificatePath = "d:/zlex.cer"; private String keyStorePath = "d:/zlex.keystore"; @Test public void test() throws Exception { System.err.println("公钥加密——私钥解密"); String inputStr = "Ceritifcate"; byte[] data = inputStr.getBytes(); byte[] encrypt = CertificateCoder.encryptByPublicKey(data, certificatePath); byte[] decrypt = CertificateCoder.decryptByPrivateKey(encrypt, keyStorePath, alias, password); String outputStr = new String(decrypt); System.err.println("加密前: " + inputStr + "\n\r" + "解密后: " + outputStr); // 验证数据一致 assertArrayEquals(data, decrypt); // 验证证书有效 assertTrue(CertificateCoder.verifyCertificate(certificatePath)); } @Test public void testSign() throws Exception { System.err.println("私钥加密——公钥解密"); String inputStr = "sign"; byte[] data = inputStr.getBytes(); byte[] encodedData = CertificateCoder.encryptByPrivateKey(data, keyStorePath, alias, password); byte[] decodedData = CertificateCoder.decryptByPublicKey(encodedData, certificatePath); String outputStr = new String(decodedData); System.err.println("加密前: " + inputStr + "\n\r" + "解密后: " + outputStr); assertEquals(inputStr, outputStr); System.err.println("私钥签名——公钥验证签名"); // 产生签名 String sign = CertificateCoder.sign(encodedData, keyStorePath, alias, password); System.err.println("签名:\r" + sign); // 验证签名 boolean status = CertificateCoder.verify(encodedData, sign, certificatePath); System.err.println("状态:\r" + status); assertTrue(status); } @Test public void testHttps() throws Exception { URL url = new URL("https://www.zlex.org/examples/"); HttpsURLConnection conn = (HttpsURLConnection) url.openConnection(); conn.setDoInput(true); conn.setDoOutput(true); CertificateCoder.configSSLSocketFactory(conn, password, keyStorePath, keyStorePath); InputStream is = conn.getInputStream(); int length = conn.getContentLength(); DataInputStream dis = new DataInputStream(is); byte[] data = new byte[length]; dis.readFully(data); dis.close(); conn.disconnect(); System.err.println(new String(data)); } }
再次执行,验证通过!
由此,我们了基于SSL协议的认证过程。测试类的testHttps方法模拟了一次浏览器的HTTPS访问。
相关链接:
Java加密技术(一)——BASE64与单向加密算法MD5&SHA&MAC
Java加密技术(二)——对称加密DES&AES
Java加密技术(三)——PBE算法
Java加密技术(四)——非对称加密算法RSA
Java加密技术(五)——非对称加密算法的由来
Java加密技术(六)——数字签名算法DSA
Java加密技术(七)——非对称加密算法最高ECC
Java加密技术(八)——数字证书
Java加密技术(九)——初探SSL
Java加密技术(十)——单向认证
Java加密技术(十一)——双向认证
Java加密技术(十二)——*.PFX(*.p12)&个人信息交换文件
评论
11 楼
hcmfys
2014-03-19
今天看到你的博客,就买了这本书,支持下
----------------------------------------------
定 价:¥89.00
京 东 价:¥70.50(8.0折)
10 楼
pzh244658240
2011-03-12
有劳,很佩服能够写的这么详细,这么高的专业水准的人。正好需要SSL加密的java教材。谢谢了。
9 楼
snowolf
2010-04-20
snowolf 写道
VerRan 写道
学习了,电信现在搞UAM,发现那个厂商做的东西有部分就是拷贝你的呵呵
收版税,收版税!!!
完整的实现,相关细节都在《Java加密与解密的艺术》书中!~
8 楼
snowolf
2010-04-20
VerRan 写道
学习了,电信现在搞UAM,发现那个厂商做的东西有部分就是拷贝你的呵呵
收版税,收版税!!!
7 楼
VerRan
2010-04-20
学习了,电信现在搞UAM,发现那个厂商做的东西有部分就是拷贝你的呵呵
6 楼
snowolf
2010-03-18
xiaolongfeixiang 写道
报错如下:
引用
所输入的不是一个 X.509 认证
https://www.thawte.com/cgi/server/try.exe 目前已经不支持这种测试认证了。去年还可以,关注我的书([url= http://snowolf.iteye.com/blog/616462]《Java加密与解密的艺术》[/url])中的另一种方式!
5 楼
xiaolongfeixiang
2010-03-18
报错如下:
引用
所输入的不是一个 X.509 认证
4 楼
xiaolongfeixiang
2010-03-18
引用
keytool -import -trustcacerts -alias www.zlex.org -file d:\zlex.p7b -keystore d:\zlex.keystore -v
这里不能导入啊?我的是 JDK1.6 update14
3 楼
snowolf
2010-03-13
yangkai 写道
非常感谢有这样一位热心的工程师。有什么好的技术可以一起交流发展!
呵呵,你也不差,博客里的帖子也有不少可以学习的内容!
2 楼
yangkai
2010-03-12
非常感谢有这样一位热心的工程师。有什么好的技术可以一起交流发展!
1 楼
crazycat03
2009-12-30
总结的很好,学习了
发表评论
-
SSLSocket获取数字证书
2013-06-05 17:53 0SSLSocket直接获得数字证书 package ... -
Java加密技术(十三)——由PEM文件获取密钥
2012-07-20 17:57 0密钥库文件通常是PEM格式,这一般是由OpenSSL生成。与J ... -
《Java加密与解密的艺术》重印,销往台湾!
2010-12-03 09:34 4787感谢大家对于《Java加密与解密的艺术》一直依赖的关注! ... -
Java加密技术(十二)——*.PFX(*.p12)&个人信息交换文件
2010-08-12 11:17 38400今天来点实际工作中的硬通货! 与计费系统打交道,少不了用到加密 ... -
Jasig CAS使用手札——一、了解Jasig CAS,简单运行!
2010-08-10 17:13 31468SSO : 单点登录(Single S ... -
《Java加密与解密的艺术》——配书源代码提供下载
2010-08-04 17:37 9799《Java加密与解密的艺术》上市小半年了,有不少朋友通过Jav ... -
Security证书相关文件格式汇总及其格式转换工具介绍
2010-06-10 17:58 0前段时间利用数字证书对几种语言(Java、.Net、Php) ... -
PKI常见证书格式和转换
2010-06-10 17:11 0PKCS 全称是 Public-Key Cryptograph ... -
《Java加密与解密的艺术》——迷你版提供下载
2010-06-03 23:57 8473《Java加密与解密的艺术》上市已2个月,有很多博友向我索要《 ... -
pkf<---->jks
2010-06-02 18:00 0/** * 从PKCS12格式转换为JKS格式 ... -
keytool建立双向认证
2010-06-02 15:18 0echo off echo 构建目录 mkdir ... -
关于Java企业级应用开发中的安全知识的探讨
2010-05-04 13:33 4095相信绝大多数做Java的朋友或多或少都会接触到Java安全技术 ... -
我与《Java加密与解密的艺术》——从写博客到写书
2010-04-29 16:07 8800时间飞快,《Java加密与解密的艺术》上市快有一个月了,虽然具 ... -
配置PKCS#11
2010-04-21 18:24 0配置PKCS#11(初学者) [ ... -
《Java加密与解密的艺术》本周上市,样书免费送!
2010-03-31 16:04 5001“千呼万唤使出来”——《Java加密与解密的艺术》终于要在本周 ... -
《Java加密与解密的艺术》封面已定,即将上市!
2010-03-15 22:15 6182经过一周多的反复审核,《Java加密与解密的艺术》封面终于敲定 ... -
《Java加密与解密的艺术》即将上市!
2010-03-01 09:47 7491不曾想,我的博客《Java ... -
Java加密技术(十一)——双向认证
2009-11-05 23:06 40558对于双向认证,做一个简单的描述。 服务器端下发证书,客户端接受 ... -
OSI安全体系结构
2009-06-10 18:41 5796最近研究安全技术,终 ... -
Java加密技术(九)——初探SSL
2009-05-28 09:25 53038在Java加密技术(八)中,我们模拟了一个基于RSA非 ...
相关推荐
虽然MD5和SHA-1仍然广泛应用于许多安全敏感的领域,但随着计算机技术的发展,这些算法的安全性受到越来越多的挑战,特别是它们对于碰撞攻击的脆弱性。因此,更安全的算法,如SHA-256和SHA-3,逐渐成为推荐使用的加密...
本文详细介绍了Java加密解密的相关概念和技术,包括对称加密算法、非对称加密算法和单向加密算法的特点及其应用场景。通过对这些基本概念的理解,可以帮助开发人员更好地选择合适的加密方案来保护敏感数据。在实际...
随着互联网技术的飞速发展,尤其是电子商务和电子政务的普及,安全加密技术的应用变得越来越广泛。在这样的背景下,对加密技术的要求也越来越高。当前,在Java环境下实现IDEA(International Data Encryption ...
### Java加密技术概览 在Java中实现加密通常涉及到对称加密、非对对称加密(公钥/私钥加密)以及散列函数等多种方式。这些加密方法被广泛应用于保护数据安全、确保通信隐私等领域。 #### 1. 对称加密 对称加密是...
**JXTA(Java Peer-to-Peer Toolkit)**是Sun Microsystems开发的一种开放源代码平台,专为构建对等网络(P2P)应用程序而设计。它提供了一个框架和一组协议,使得开发者能够创建分布式、自组织的应用程序,这些应用...
本文介绍了三种常见的加密算法——MD5、AES 和 DES 在 Java 中的实现。这些算法各有特点,适用于不同的场景。MD5 作为单向哈希函数主要用于数据完整性校验;AES 和 DES 作为对称加密算法,可用于数据的加密和解密。...
讨论了阈值加密技术及其在密钥管理中的应用。 - **第35章:案例研究:Secure Shell (SSH)** 通过SSH协议的具体实现来展示上述技术的实际应用。 #### 三、Java程序 书中还提供了大量的Java代码示例,用于演示各种...
MD5的输出虽然看起来像是可逆的,但由于其设计特性,实际上无法直接从摘要还原原始数据,这正是哈希函数的主要特性——单向性。 在密码学中,MD5曾广泛用于密码存储,但随着彩虹表和碰撞攻击的发展,MD5的弱点逐渐...
10. **实战应用**:了解如何在实际项目中应用这些加密技术,比如数据库中的数据加密、API接口的安全设计、电子邮件加密等。 通过对华为OD题库中的字符串加解密题目进行练习,可以深入理解上述知识点,并提高在实际...
通过深入学习《JXTA——Java P2P网络编程技术》,开发者不仅可以掌握JXTA的使用,还能对P2P网络模型有更深入的理解,从而能设计和实现更高效、安全的分布式系统。在实际开发中,结合这本书中的理论知识与实践经验,...
本文档所描述的毕业设计项目——校园二手物品交易市场,利用了先进的技术和成熟的开发框架,实现了高效、安全的二手物品交易环境。SSM框架、Java和Mysql的结合,提供了稳定且可扩展的后台支持,而Vue.js的使用则保证...
本文将深入探讨一个基于SSM(Spring、SpringMVC、MyBatis)和Vue.js框架构建的医患管理系统——“基于SSM+Vue的铁岭河医院医患管理系统”。该系统旨在提升医院的运营效率,优化医患交流,提供便捷的预约、就诊、查询...
《JXTA技术详解——基于myjxta2.5源码分析》 JXTA(Java XML-based Peer-to-Peer Technology)是Sun Microsystems推出的一种开放的、基于XML的P2P(Peer-to-Peer)网络协议。它允许对等节点之间进行通信,共享资源...
首先,SSM是Java Web开发中广泛应用的三大组件——Spring、SpringMVC和MyBatis的组合。Spring作为整体的依赖注入容器,管理着项目中的bean,提供了事务管理、AOP(面向切面编程)等核心功能。SpringMVC则处理HTTP...
这种口令通常由硬件或软件令牌生成,如硬件OATH令牌或我们的主题——安卓手机上的软件令牌。动态口令系统如TOTP(时间同步一次密码)和HOTP(基于计数的一次密码)是常见的实现方式。 2. TOTP(时间同步一次密码)...
- 探讨了在Web服务环境下如何保障数据的安全性和完整性,包括使用加密技术、数字签名等方法。 - **7.4 定义和描述** - 讨论了如何使用WSDL和其他相关标准来准确地定义和描述Web服务的功能和特性。 - **7.5 实现...