![](https://img-blog.csdnimg.cn/20190918140158853.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
加密
加密
NPException
学无止境
展开
-
报错Encoded password does not look like BCrypt和There is no PasswordEncoder mapped for the id “null”
前言使用的是spring security自带的login页面,结果登陆的时候,用户名和密码正确也无法打开资源,还是停留在login页面。而且发现控制台报了异常——There is no PasswordEncoder mapped for the id “null”。网上百度了一下发现这是因为Spring security 5.0中新增了多种加密方式,也改变了密码的格式。{id}enc...原创 2019-11-19 15:13:12 · 1595 阅读 · 0 评论 -
Spring security filter详解(5.1.6)
1.Spring security filter1.1默认filter链,在程序启动时会打印出如下日志,该日志打印出了默认的filter链和顺序,其中WebAsyncManagerIntegrationFilter为第一个filter,FilterSecurityInterceptor为最后一个filter。2019-11-19 10:26:54.340 INFO 17148 --- ...原创 2019-11-19 11:29:35 · 1546 阅读 · 0 评论 -
URL传Base64 造成报错 Illegal base64 character 20
报错:Illegal base64 character 20原因: base64 编码中使用了加号(+),而 + 在 URL 传递时会被当成空格,因此造成了base64字符串被更改,在服务器端解码后就会出错。解决方法一: 发对传进来的字符串做处理,把空格更改成“+”号,利用java的replaceAll() 方法String s = str....原创 2019-10-08 11:22:23 · 3852 阅读 · 0 评论 -
DSA算法实现数字签名--java实现
简介DSA是Schnorr和ElGamal签名算法的变种,被美国NIST作为DSfS(DigitalSignature Standard)。DSA是基于整数有限域离散对数难题的,其安全性与RSA相比差不多。DSA的一个重要特点是两个素数公开,这样,当使用别人的p和q时,即使不知道私钥,你也能确认它们是否是随机产生的,还是作了手脚。RSA却做不到。算法分类信息:算法 密钥长度...原创 2019-06-05 10:12:12 · 1508 阅读 · 0 评论 -
椭圆加密算法
简介椭圆加密算法(ECC)是一种公钥加密体制,最初由Koblitz和Miller两人于1985年提出,其数学基础是利用椭圆曲线上的有理点构成Abel加法群上椭圆离散对数的计算困难性。公钥密码体制根据其所依据的难题一般分为三类:大素数分解问题类、离散对数问题类、椭圆曲线类。有时也把椭圆曲线类归为离散对数类。速度 ecc算法比RSA、DSA速度更快。椭圆曲线密码学椭圆曲...原创 2019-06-04 13:38:21 · 2897 阅读 · 0 评论 -
RSA算法加密和签名详解---java实现
简介RSA加密算法是一种非对称加密算法。在公开密钥加密和电子商业中RSA被广泛使用。RSA是1977年由罗纳德·李维斯特(Ron Rivest)、阿迪·萨莫尔(Adi Shamir)和伦纳德·阿德曼(Leonard Adleman)一起提出的。当时他们三人都在麻省理工学院工作。RSA就是他们三人姓氏开头字母拼在一起组成的。算法分类信息:算法 密钥长度 默认长度 签名长...原创 2019-06-04 09:39:36 · 2532 阅读 · 3 评论 -
Java用HttpsURLConnection访问https网站的时候如何跳过SSL证书的验证?
在Java的编程世界里面,我们有的时候,会经常访问一些HTTPS的网站,那么访问这些HTTPS的网站的时候,如果当前这个网站是自己企业内部的已知 的网站,或者我们信任的网站,这个时候,我们为了编写程序的方便,就不需要把当前网站的服务器的根证书以及中间证书导入到JKS里面,让在程序在调用HTTP协议的时候对服务器的服务器名和证书名进行对比---------------------把下面这段代码...原创 2018-12-25 16:18:47 · 4237 阅读 · 1 评论 -
Windows安装使用Openssl
1. OpenSSL官网官方下载地址: https://www.openssl.org/source/2. Windows安装方法OpenSSL官网没有提供windows版本的安装包,可以选择其他开源平台提供的工具。例如 http://slproweb.com/products/Win32OpenSSL.html以该工具为例,安装步骤和使用方法如下:2.1 选择32位或者64位合适...原创 2019-04-13 18:03:59 · 315 阅读 · 0 评论 -
Java如何进行Base64的编码(Encode)与解码(Decode)
关于base64编码Encode和Decode编码的几种方式Base64是一种能将任意Binary资料用64种字元组合成字串的方法,而这个Binary资料和字串资料彼此之间是可以互相转换的,十分方便。在实际应用上,Base64除了能将Binary资料可视化之外,也常用来表示字串加密过后的内容。如果要使用Java 程式语言来实作Base64的编码与解码功能。早期作法早期在Java上做Ba...原创 2019-06-03 16:47:11 · 23140 阅读 · 1 评论 -
消息摘要算法md5和sha算法的实现和hmac的详解
概述消息摘要算法包括MD(MessageDigest,消息摘要算法)、SHA(SecureHashAlgorithm,安全散列算法)、MAC(MessageAuthenticationCode,消息认证码算法)共3大系列,常用于验证数据的完整性,是数字签名算法的核心算法。MD5和SHA1分别是MD、SHA算法系列中最有代表性的算法。如今,MD5已被发现有许多漏洞...原创 2019-06-03 15:06:58 · 815 阅读 · 0 评论 -
数字签名
算法简述数字签名算法可以看做是一种带有密钥的消息摘要算法,并且这种密钥包含了公钥和私钥。也就是说,数字签名算法是非对称加密算法和消息摘要算法的结合体。特点数字签名算法要求能够验证数据完整性、认证数据来源,并起到抗否认的作用。原理数字签名算法包含签名和验证两项操作,遵循私钥签名,公钥验证的方式。签名时要使用私钥和待签名数据,验证时则需要公钥、签名值和待签名数据,其核心算法主要...原创 2019-06-03 13:25:01 · 4630 阅读 · 0 评论 -
消息摘要算法概述及简介
概述数字摘要也称为消息摘要,它是一个唯一对应一个消息或文本的固定长度的值,它由一个单向Hash函数对消息进行计算而产生。如果消息在传递的途中改变了,接收者通过对收到消息采用相同的Hash重新计算,新产生的摘要与原摘要进行比较,就可知道消息是否被篡改了,因此消息摘要能够验证消息的完整性。消息摘要采用单向Hash函数将需要计算的内容"摘要"成固定长度的串,这个串亦称为数字指纹。这个串有固定的长度,...原创 2019-06-03 13:04:29 · 3368 阅读 · 0 评论 -
ECDSA算法--java实现
简介椭圆曲线数字签名算法(ECDSA)是使用椭圆曲线密码(ECC)对数字签名算法(DSA)的模拟。ECDSA于1999年成为ANSI标准,并于2000年成为IEEE和NIST标准。它在1998年既已为ISO所接受,并且包含它的其他一些标准亦在ISO的考虑之中。与普通的离散对数问题(discrete logarithm problem DLP)和大数分解问题(integer factoriza...原创 2019-06-05 12:51:07 · 3929 阅读 · 0 评论