关闭
当前搜索:

Java加密解密之数字签名

上一篇帖子,我们讲了MAC(消息认证码),它可以验证身份和防篡改。 它的机制是通过通信双方都持有相同的秘钥去实现,秘钥相同摘要才相同,没有秘钥就不能生成正确的摘要信息。 但是,它有个缺点,就是通信双方必须持有相同的秘钥,解决方法就是使用数字签名 数字签名(又称公钥数字签名、电子签章)是一种类似写在纸上的普通的物理签名,但是使用了非对称加密领域的技术实现,用于鉴别数字信息的方法...
阅读(270) 评论(1)

Java加密解密之MAC(消息认证码)

上一篇帖子,我们讲了消息摘要(数字摘要),它是把一个文本/文件 通过摘要函数(hash函数)计算出一个结果。然后把文本/文件和摘要结果一同发给接受者 接受者接收到文件之后,也进行摘要,把两个摘要结果进行对比。如果一致就说明文本/文件和摘要是一致的 但是,这里有个问题,假设A把文件和摘要发给B,中途被C截获了。C把文件改了,同时把改后的文件进行摘要。然后把改后的文件和重新生成的摘要发给B...
阅读(192) 评论(0)

Java加密解密之消息摘要

消息摘要,也叫数字摘要。它是一种单向的,不可逆的加密算法。 发送方:采用单向hash函数对消息进行计算,得到摘要。发送消息和摘要。 接收方:把接收的消息,按着同样的hash函数计算,新产生的摘要和发送来的原摘要进行对比。如果2个摘要不一致,说明消息不完整了。 消息摘要的特点: 1、无论输入的消息有多长,计算出来的摘要长度是固定的。 2、相同的消息,计算出来的摘要相同。不同的消息,...
阅读(156) 评论(0)

Java加密解密之非对称加密

非对称加密算法需要两个密钥来进行加密和解密,这两个秘钥是公开密钥(public key,简称公钥)和私有密钥(private key,简称私钥)。使用公钥加密的,要使用私钥解密。反之,使用私钥加密的,要使用公钥解密。 和对称加密的区别是: 对称加密:加密和解密时使用的是同一个秘钥 非对称加密:加密和解密时使用的是不同的秘钥 非对称加密与对称加密相比,其安全性更好:对称加...
阅读(156) 评论(0)

Java加密解密之对称加密

采用单钥密码系统的加密方法,同一个密钥可以同时用作信息的加密和解密,这种加密方法称为对称加密,也称为单密钥加密。 其核心思想是,加密和解密都是同一个秘钥 对称加密常用的算法有:DES、3DES、TDEA、Blowfish、RC2、RC4、RC5、IDEA、SKIPJACK、AES等。 对称加密算法的优点是算法公开、计算量小、加密速度快、加密效率高。 对称加密算法的缺...
阅读(214) 评论(0)

Spring4自定义@Value功能

本文章使用的Spring版本4.3.10.RELEASE @Value在Spring中,功能非常强大,可以注入一个配置项,可以引用容器中的Bean(调用其方法),也可以做一些简单的运算 如下的一个简单demo,演示@Value的用法 import org.springframework.stereotype.Service; /** * 测试Bean */ @Serv...
阅读(697) 评论(1)

Spring Data JPA使用复合主键

演示环境 MySQL 5.7 JDK1.8 spring-data-jpa 1.10.4.RELEASE hibernate 5.1.2.Final 这里演示一个余额宝的例子,一个用户一天一条记录,表示一个用户一天的收益情况。其中,用户ID,日期是复合主键 项目总体结构如下: 下面依次贴出源代码 pom.xml <project xmlns="http:/...
阅读(1636) 评论(0)

使用jvisualvm、jmc远程监控JVM

演示环境:jdk1.8 jvisualvm和jmc都是JDK自带的监控工具。jmc监控数据比jvisualvm更加丰富。它们都在JDK bin目录中 首先介绍jvisualvm的使用 打开bin/jvisualvm.exe 本地的JVM进程都已经识别出来了,直接点击即可监控。 为了使jvisualvm功能更加强大,需要安装一些插件  运行jvisual...
阅读(1121) 评论(0)

maven+spring mvc环境搭建xml版(无web.xml,maven jetty插件运行)

环境: Spring Framework 4.3.7.RELEASE Servlet 3.1.0 JDK 1.8 这里的xml版,是指spring的配置使用xml 创建maven webapp项目:maven-spring-webmvc-xml  项目结构如下: 各文件代码如下: pom.xml <...
阅读(1108) 评论(0)

maven+spring mvc环境搭建注解版(无web.xml,maven jetty插件运行)

环境: Spring Framework 4.3.7.RELEASE Servlet 3.1.0 JDK 1.8 创建maven webapp项目:maven-spring-webmvc  项目结构如下: 各文件代码如下: pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xs...
阅读(1087) 评论(0)

maven检查是否有新依赖/插件的方法

maven是现在最流行的项目管理工具,在企业中使用的非常广泛。 在一个maven管理的项目中,一般会配置很多依赖、插件,如何检查这些依赖是否有最新的版本? 除了去这些框架的官方网站上看,maven也自带了检查最新版本的方法 就是使用version插件versions-maven-plugin versions:display-dependency-updates scans a p...
阅读(537) 评论(0)

Spring Boot WAR包运行原理分析

Spring Boot应用支持用jar方式独立运行(官方推荐)。当然了,也支持打包成war放到web容器中运行 下面,讲简单的演示一下打包成war包运行的步骤 1:新建maven项目 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-in...
阅读(1209) 评论(2)

Spring Boot整合H2测试DAO

在写DAO层的单元测试时,我们往往会遇到一个问题,测试用例所依赖的数据库数据被修改或删除了,或者在一个新的环境下所依赖的数据库不存在,导致单元测试无法通过,进而构建失败。 在这种情况下,使用H2内存数据库来模拟数据库环境是一个很好的解决方案 H2是一个短小精干的嵌入式数据库引擎,主要的特性包括: 1: 免费、开源、快速 2: 嵌入式的数据库服务器,支持集群 3: 提供JDBC、ODB...
阅读(5035) 评论(1)

JDBC中使用Java8的日期LocalDate、LocalDateTime

大家知道,在实体Entity里面,可以使用java.sql.Date、java.sql.Timestamp、java.util.Date来映射到数据库的date、timestamp、datetime等字段 但是,java.sql.Date、java.sql.Timestamp、java.util.Date这些类都不好用,很多方法都过时了。 Java8里面新出来了一些API,LocalDate、...
阅读(5476) 评论(4)

JPA(Hibernate)中使用Java8的日期LocalDate、LocalDateTime

大家知道,在实体Entity里面,可以使用java.sql.Date、java.sql.Timestamp、java.util.Date来映射到数据库的date、timestamp、datetime等字段 但是,java.sql.Date、java.sql.Timestamp、java.util.Date这些类都不好用,很多方法都过时了。 Java8里面新出来了一些API,LocalDate、...
阅读(3898) 评论(1)

mybatis中使用Java8的日期LocalDate、LocalDateTime

大家知道,在实体Entity里面,可以使用java.sql.Date、java.sql.Timestamp、java.util.Date来映射到数据库的date、timestamp、datetime等字段 但是,java.sql.Date、java.sql.Timestamp、java.util.Date这些类都不好用,很多方法都过时了。 Java8里面新出来了一些API,LocalDate、...
阅读(5934) 评论(3)

Embed Tomcat8简单示例

一:项目依赖 org.apache.tomcat.embed tomcat-embed-core 8.5.5 org.apache.tomcat.embed tomcat-embed-el 8.5.5 org.apache.tomcat.embed tomcat-embed-jasper 8.5.5 二:示例代码 servlet package c...
阅读(4505) 评论(2)

使用Fork/Join实现WordCount例子

Fork/Join框架是Java7提供了的一个用于并行执行任务的框架, 是一个把大任务分割成若干个小任务,最终汇总每个小任务结果后得到大任务结果的框架。 Fork/Join框架是一个比较特殊的线程池框架,专用于需要将一个任务不断分解成子任务(分叉),再不断进行汇总得到最终结果(结合)的计算过程。 比起传统的线程池类ThreadPoolExecutor,ForkJoinPool 实现了工作窃取算...
阅读(869) 评论(0)

etcd3安装和配置

etcd 是一个高可用的 Key/Value 存储系统,主要用于分享配置和服务发现。etcd 的灵感来自于 ZooKeeper 和 Doozer, 侧重于: 简单:支持 curl 方式的用户 API (HTTP+JSON) 安全:可选 SSL 客户端证书认证 快速:单实例可达每秒 1000 次写操作 可靠:使用 Raft 实现分布式 系统环境:CentOS release 6....
阅读(4374) 评论(0)

nginx + lua环境搭建

Lua 是一个小巧的脚本语言。该语言的设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。 Lua脚本可以很容易的被C/C++代码调用,也可以反过来调用C/C++的函数,这使得Lua在应用程序中可以被广泛应用。 不仅仅作为扩展脚本,也可以作为普通的配置文件,代替XML,Ini等文件格式,并且更容易理解和维护。 直接使用官方的nginx + lua_nginx_m...
阅读(1095) 评论(0)
201条 共11页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:454658次
    • 积分:6882
    • 等级:
    • 排名:第3820名
    • 原创:195篇
    • 转载:1篇
    • 译文:0篇
    • 评论:65条
    博客专栏
    最新评论