05 2019 档案
廖雪峰Java11多线程编程-1线程的概念-2创建新线程
摘要:Java语言内置多线程支持: 一个Java程序实际上是一个JVM进程 JVM用一个主线程来执行main()方法 在main()方法中又可以启动多个线程 1.创建新线程 要启动一个线程,需创建一个线程对象。创建线程对象的方法有3种。 1.1 方法一:使用Thread创建线程 创建MyThread类: 阅读全文
posted @ 2019-05-24 04:07 singleSpace 阅读(510) 评论(0) 推荐(0)
廖雪峰Java11多线程编程-1线程的概念-1多线程简介
摘要:1.多任务 多任务就是同时运行多个任务,例如同时开启钉钉、百度网盘、火狐、谷歌、ps等。 现代操作系统(windows,MacOS,Linux)都可以执行多任务:操作系统执行多任务就是让多个任务交替执行,例如浏览器执行0.001秒,网盘执行0.001秒,钉钉执行0.001秒。因为任务的数量远远多余C 阅读全文
posted @ 2019-05-23 00:50 singleSpace 阅读(384) 评论(0) 推荐(0)
廖雪峰Java10加密与安全-6数字证书-1数字证书
摘要:数字证书: 非对称加密算法:对数据进行加密/解密 签名算法:确保数据完整性和抗否认性 摘要算法:确保证书本身没有被篡改 阅读全文
posted @ 2019-05-22 22:04 singleSpace 阅读(271) 评论(0) 推荐(0)
廖雪峰Java10加密与安全-5签名算法-2DSA签名算法
摘要:DSA DSA:Digital Signature Algorithm,使用EIGamal数字签名算法,和RSA数字签名相比,DSA更快。 DSA只能配合SHA使用: SHA1withDSA SHA256withDSA SHA512withDSA 代码演示: 总结: DSA是另一种签名算法 其他数字 阅读全文
posted @ 2019-05-22 13:53 singleSpace 阅读(319) 评论(0) 推荐(0)
廖雪峰Java10加密与安全-5签名算法-1RSA签名算法
摘要:1.数字签名 甲在发送加密消息的时候,还要发送自己的签名,而这个签名是用甲的privateKey计算的;而乙要验证这个签名是否是合法的,会用甲的publicKey去验证,如果验证成功,这个消息确实是甲发送的。 数字签名: 发送方用自己的私钥对消息进行签名:sig = signature(privat 阅读全文
posted @ 2019-05-16 22:51 singleSpace 阅读(368) 评论(0) 推荐(0)
廖雪峰Java10加密与安全-4加密算法-5非对称加密算法
摘要:1.非对称加密 非对称加密就是加密和解密使用的不是相同的密钥 方法1: 加密:用自己的私钥加密,然后发送给对方:encrypt(privateKeyA, message) s 解密:对方用自己的公钥解密:decrypt(publicKeyA, s) message 方法2: 加密:用对方的公钥加密, 阅读全文
posted @ 2019-05-15 20:20 singleSpace 阅读(316) 评论(0) 推荐(0)
廖雪峰Java10加密与安全-4加密算法-4密钥交换算法
摘要:1DH算法 1.1.原根公式:g^i mod P 条件:1 s decrypt(key,s) message 问题:如何传递密钥? 不给对方密钥,对方就不能解密;而直接传递密钥,会被黑客监听。 所以问题变成了:如果在不安全的信道上安全的传递密钥? 密钥交换算法,Differ Hellman算法,就是 阅读全文
posted @ 2019-05-14 12:47 singleSpace 阅读(525) 评论(0) 推荐(0)
廖雪峰Java10加密与安全-4加密算法-2口令加密算法
摘要:对称加密key是一个byte数组,如AES256算法的key是一个32字节的数组,普通的加密软件由用户输入加密口令。如果由用户输入口令,进行加密/解密,需要用到PBE算法。 1.PBE:Password Based Encryption 由用户输入口令,采用随机数杂凑计算出密钥再进行加密 Passw 阅读全文
posted @ 2019-05-13 21:19 singleSpace 阅读(630) 评论(0) 推荐(0)
廖雪峰Java10加密与安全-4加密算法-1对称加密算法
摘要:1.对称加密算法 加密和解密使用同一个密钥,例如WinRAR。 WinRAR在对文件进行打包的时候,可以设置一个密码,在解压的时候需要使用同样的密码才能正确的解压。 加密:encrypt(key,message) s 解密:decrypt(key,s) message |算法|密钥长度(决定加密的强 阅读全文
posted @ 2019-05-10 22:19 singleSpace 阅读(472) 评论(0) 推荐(0)
廖雪峰Java10加密与安全-3摘要算法-5Hmac
摘要:1 比较MD5和HamcMD5 HmacMD5可以看作带安全salt的MD5 2 代码示例 3 总结: Hmac是把Key混入摘要的算法 可以配合MD5、SHA 1等摘要算法 摘要长度和原摘要算法长度相同 阅读全文
posted @ 2019-05-10 20:27 singleSpace 阅读(312) 评论(0) 推荐(0)
廖雪峰Java10加密与安全-3摘要算法-4BouncyCastle
摘要:1.BouncyCastle: 第三方提供的一组加密/哈希算法 提供JDK没有提供的算法 RipeMD160哈希算法 "官方网站" 2.如何使用第三方提供的算法 2.1 添加第三方jar至classpath "jar包下载地址" IDEA:project structure modules depe 阅读全文
posted @ 2019-05-10 18:38 singleSpace 阅读(526) 评论(0) 推荐(0)
廖雪峰Java10加密与安全-3摘要算法-3SHA-1算法
摘要:1.SHA 1算法 SHA 1算法也是一种哈希算法。 输出160 bits/20bytes 由美国国家安全局开发 ~~SHA 0~~/SHA 1/SHA 256/SHA 512 ~~SHA 0~~有问题,已经作废了 |算法|输出长度:bits|输出长度:bytes | | | |SHA 1|160 阅读全文
posted @ 2019-05-08 22:09 singleSpace 阅读(564) 评论(0) 推荐(0)
廖雪峰Java10加密与安全-3摘要算法-1MD5
摘要:1.摘要算法 1.1 摘要算法(哈希算法/Hash/数字指纹): 计算任意长度数据的摘要(固定长度) 相同的输入数据始终得到相同的输出 不同的输入尽量得到不同的输出 1.2 摘要算法目的: 验证数据和原始数据是否一致,被篡改 1.3.java的Object.hashCode()方法就是一个摘要算法: 阅读全文
posted @ 2019-05-07 22:37 singleSpace 阅读(280) 评论(0) 推荐(0)
廖雪峰Java10加密与安全-2加密算法-2Base64编码
摘要:1.Base64编码 Base64一种把二进制数据用文本表示的编码算法。例如 中有3个字节{\xe4, \xb8, \xad},一共是24位,每6位分组,变成4个字节{39, 0b, 22, 2d},最终结果位5Lit。 如果长度不是3的整数倍: 末尾补0x00或0x00 0x00 编码后加=表示补 阅读全文
posted @ 2019-05-07 21:13 singleSpace 阅读(307) 评论(0) 推荐(0)
廖雪峰Java10加密与安全-2加密算法-1URL编码
摘要:1.URL编码 URL编码是浏览器发送数据给服务器时使用的编码。 如通过百度搜索美女: 编码前:https://www.baidu.com/s?wd=美女 编码后:https://www.baidu.com/s?wd=%E7%BE%8E%E5%A5%B3 URL编码规则: A Z, a z, 0 9 阅读全文
posted @ 2019-05-07 18:55 singleSpace 阅读(258) 评论(0) 推荐(0)
廖雪峰Java10加密与安全-1数据安全-1加密与安全概念
摘要:数据安全 防窃听 防篡改 防伪造 古代加密方式: 移位密码:HELLO = IFMMP 替代密码:HELLO= p12,5,3 现代加密方式: 建立在严格的数学理论基础上 密码学逐渐发展成一门科学 总结: 设计一个安全的加密算法非常困难 验证一个加密算法是否安全更加困难 当前被认为安全的加密算法仅仅 阅读全文
posted @ 2019-05-07 09:55 singleSpace 阅读(227) 评论(0) 推荐(0)
廖雪峰Java9正则表达式-2正则表达式进阶-6搜索和替换
摘要:1.使用正则表达式分割字符串: 2.使用正则表达式查找字符串 3.使用正则表达式替换字符串 4.总结 使用正则表达式可以: 分割字符串:String .split() 搜索字串:Matcher.find() 替换字符串:String.replaceAll() 阅读全文
posted @ 2019-05-06 22:41 singleSpace 阅读(637) 评论(0) 推荐(0)
廖雪峰Java9正则表达式-2正则表达式进阶-5非贪婪匹配
摘要:1.贪婪匹配 问题:给定一个字符串表示的数字,判断该数字末尾0的个数? "123000": 3个0 "10100": 2个0 "1001": 0个0 先使用"^(\d+)(0 )$"匹配这三个字符串 结果:0并未匹配到,group1将整个字符串完全匹配 原因:正则表达式默认使用贪婪匹配,尽可能多的向 阅读全文
posted @ 2019-05-06 21:39 singleSpace 阅读(1121) 评论(0) 推荐(0)
jmeter断言
摘要:感谢 "peakchao" 提供的API接口 "https://blog.csdn.net/c__chao/article/details/78573737" 。 从中选择一个接口即可,我使用的是 "https://api.apiopen.top/todayVideo" 1.查看结果 使用pytho 阅读全文
posted @ 2019-05-05 09:04 singleSpace 阅读(705) 评论(0) 推荐(0)