`
huanglanfa
  • 浏览: 21227 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

JDK Base64加密解密算法

阅读更多
核心提示:java Base64编码非常容易,jdk本身就提供了base64编码的类,下面是base64编码和解码的例子 例子中使用参数-e表示加密,-d表示解密. 代码 import java.io.ByteArrayInputStream; import java.io.FileInputStream; import java.io.FileOutputStream; import sun.m
java Base64编码非常容易,jdk本身就提供了base64编码的类,下面是base64编码和解码的例子

例子中使用参数-e表示加密,-d表示解密.

代码
import java.io.ByteArrayInputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;

import sun.misc.BASE64Decoder;
import sun.misc.BASE64Encoder;


public class Base64 {

    /**
     * @param args
     */
    public static void main(String[] args) throws Exception {
        // TODO Auto-generated method stub       
        if(args.length==2){
            if("-e".equals(args[1])){
                //System.out.println("encoding.\r\n\r\n");
                BASE64Encoder base64=new BASE64Encoder();
                base64.encode(args[0].getBytes("utf-8"), System.out);
            }else if("-d".equals(args[1])){
                //System.out.println("decoding.\r\n\r\n");
                BASE64Decoder base64=new BASE64Decoder();
                base64.decodeBuffer(new ByteArrayInputStream(args[0].getBytes("utf-8")), System.out);
            }
        }else if(args.length==3){
            if("-e".equals(args[2])){
                //System.out.println("encoding.\r\n\r\n");
                BASE64Encoder base64=new BASE64Encoder();
                base64.encode(new FileInputStream(args[0]), new FileOutputStream(args[1],false));
            }else if("-d".equals(args[2])){
                //System.out.println("decoding.\r\n\r\n");
                BASE64Decoder base64=new BASE64Decoder();
                base64.decodeBuffer(new FileInputStream(args[0]), new FileOutputStream(args[1],false));
            }
        }else
            System.out.println("used c:\\>java Base64 inputString -e or c:\\>java Base64 inputFile outputFile -d");
        System.out.flush();
        System.out.println("\r\n\r\n");
    }

}
分享到:
评论

相关推荐

    利用jdk自带算法实现的AES加解密

    本文将详细介绍如何利用JDK自带的算法实现AES加解密,并结合Base64编解码进行数据处理。 首先,AES是一种分组密码,它以128位为一个数据块进行加密,支持128、192和256位的密钥长度。在JDK中,AES加解密的核心类...

    JDKBASE64加密解密工具

    JDKBASE64加密解密工具就是一种基于Java Development Kit(JDK)内置的Base64编码和解码机制来实现数据加密和解密的方法。Base64是一种将任意二进制数据转化为可打印字符的编码方式,常用于在网络上传输二进制数据,...

    jdk实现简单加解密算法

    本文将基于给定的标题"jdk实现简单加解密算法"和描述,深入探讨如何利用Java Development Kit(JDK)的内置API来实现基本的加密和解密操作。我们将涵盖MD5、Base64和SHA等常见的加密算法,并结合文件名"security",...

    常见的base64的三种加密与解密的方法

    1. **基于JDK的Base64加密与解密** JDK 1.8及更高版本内置了Base64的支持。使用`java.util.Base64`类,我们可以方便地进行加密和解密操作。 加密(编码)示例: ```java import java.util.Base64; byte[] ...

    BASE64Decoder加密解密工具jar类.zip

    在给定的资源"BASE64Decoder加密解密工具jar类.zip"中,我们重点关注的是一个Java类库,它提供了对AES(Advanced Encryption Standard)加密算法的支持,以及使用BASE64编码进行解码的功能。这个类库可能包含了一些...

    图片BASE64加密保存到数据库Blob类型中(放入数据库,并取出生成图片)

    如果需要对图片进行安全保护,通常会使用如AES、RSA等加密算法,而BASE64编码只能作为传输中的辅助手段。 4. **图片解密**:这里的“解密”可能指的是从BASE64字符串恢复到原始图片数据的过程。这个过程称为解码,...

    JAVA加密解密AES算法

    `AESR.java`和`Base64Utils.java`是自定义的JAVA类,前者可能实现了AES加密解密的逻辑,后者处理Base64编码。 在实际应用中,`AESR.java`可能包含了实现AES加密解密的函数,如`encrypt()`和`decrypt()`,而`Base64...

    JAVA实现AES加密和解密

    4. 将加密后的字节数组转换回字符串,可以使用Base64编码以方便存储和传输。 ```java String encodedCipherText = Base64.getEncoder().encodeToString(cipherTextBytes); ``` 解密过程与加密类似,只是在初始化`...

    javabase64-1.3.1

    总的来说,`javabase64-1.3.1.jar`是Java开发中的一个重要工具,它提供了一套完整的Base64编码和解码功能,不仅适用于常规的数据转换,还在与RSA等加密算法结合时起到关键作用,使得开发者能够更方便地处理二进制...

    crypto-js des加密对接jdk SecretKeyFactory解密

    总的来说,这个场景涉及到了JavaScript和Java之间的跨平台加密解密通信,通过`crypto-js`库在前端进行加密,然后在后端使用Java的`SecretKeyFactory`进行解密。理解DES加密的原理、密钥管理以及编码方式是实现这一...

    base64源码

    总的来说,这个压缩包包含了一个Base64编码的实现以及两个加密库和一个通用编码库,它们可能用于加密、解密后数据的Base64编码,或者提供更广泛的编码选项。深入研究这些源码,我们可以更好地理解数据编码的底层机制...

    AES256加密及解密

    AES256是一种高级加密标准(Advanced Encryption Standard),是目前广泛应用的数据加密算法,以其强大的安全性、效率和灵活性而闻名。该标准由NIST(美国国家标准...这些知识点对于理解并实现AES256加密解密至关重要。

    Java实现的对称加密算法AES定义与用法详解

    System.out.println("jdk aes encrypt : " + Base64.encodeBase64String(result)); //解密 cipher.init(Cipher.DECRYPT_MODE, key); result = cipher.doFinal(result); System.out.println("jdk aes desrypt : ...

    基于Java的加密算法演示项目.zip

    通过不同的示例代码,项目涵盖了Base64、DES、IDEA、MD5、RSA和SHA1等多种加密算法的实现。每个示例都详细展示了如何使用Java语言和相关库来实现这些加密和解密操作。 主要内容 Base64Demo: 演示了如何使用...

    前后端RSA非对称加密解密(代码示例).rar

    登录时,用户的密码用明文传输...非对称加密算法常用RSA算法,秘钥使用base64编码成字符串,后端使用jdk8的标准API,前端使用jsencrypt.js进行RSA的对应操作。经过测试,本例中的前后端代码的加密解密计算结果是一致的。

    详细分析JAVA8新特性 Base64

    但是,Base64不是安全领域下的加密解密算法,无法起到安全作用,其主要作用是传输数据的正确性,有些网关或系统只能使用ASCII字符。Base64就是用来将非ASCII字符的数据转换成ASCII字符的一种方法,非常适合在http、...

    AES+RSA加密解密(js和java互通)

    在这个项目中,我们关注的是"AES+RSA加密解密",这是两种广泛使用的加密算法,适用于JavaScript和Java环境中的前后端数据交换。下面将详细介绍这两个加密算法以及如何实现它们的互通。 **AES(Advanced Encryption ...

    js加密服务端解密

    `JS加密,java服务端解密,采用RAS非对称加密算法.pdf`是相关文档,详细解释了使用RSA算法进行加密解密的步骤和技术细节。 服务端使用Java来处理解密任务。`LoginAction.java`可能是处理登录请求的Servlet或控制器...

    AES256加密工具类,及其所必须的jar包

    在AES256Util中,这个库可能会被用于将加密后的字节数组转换为可读的Base64字符串,以及将接收到的Base64字符串解码回字节数组进行解密。 在实际应用中,AES256加密工具类可以用于保护敏感信息,例如用户密码、...

    国密依赖包bcprov-jdk16-1.46.jar

    在bcprov-jdk16-1.46.jar中,你可以找到SM2算法的实现,用于数据加密和解密、签名验证以及密钥交换等操作。 2. **SM3算法**:SM3是一种密码散列函数,类似于SHA-256,但其内部结构和安全特性都是中国特有的。SM3...

Global site tag (gtag.js) - Google Analytics