当前位置: 首页 > 知识库问答 >
问题:

如何使用Java将密码转换为Ldap的Base64?[副本]

荆运诚
2023-03-14

我正在使用ldap,在java上工作,那里的密码值是base64格式,如何将我的普通文本密码sarath_dev转换为base64用于ldap?

共有1个答案

孔逸春
2023-03-14

对于那些不熟悉base64编码算法的人,这里是基本的介绍。Base64使用一种算法对字符串进行编码(改变原始字符串的内容),该算法使用64个可打印字符以算法顺序替换原始字符串中的每个字符,以便以后对其进行解码。Base64编码通过将数据编码为ASCII格式来防止误用数据。虽然有更高级的加密算法可用,如RSA-SHAMD5并且您应该在生产中使用这些算法,但是Base64对于简单的编码需求来说是非常简单和易于使用的。

Java中字符串到Base64的编码与解码

下面是base64编码算法中字符串编码和解码的快速示例。我们首先将字符串转换为字节数组进行编码,然后传递给base64.encodebase64(byte[]),后者按照base64 encode算法对字节数组进行编码,返回编码后的字节数组,并将其转换为字符串。在后半部分中,我们将通过调用base64.decodeBase64(byte[])方法对字符串进行解码。

import org.apache.commons.codec.binary.Base64;
public class Base64EncodingExample{

    public static void main(String args[]) throws IOException {
        String orig = "original String before base64 encoding in Java";

        //encoding  byte array into base 64
        byte[] encoded = Base64.encodeBase64(orig.getBytes());     

        System.out.println("Original String: " + orig );
        System.out.println("Base64 Encoded String : " + new String(encoded));

        //decoding byte array into base64
        byte[] decoded = Base64.decodeBase64(encoded);      
        System.out.println("Base 64 Decoded  String : " + new String(decoded));

    }
}


Output:
Original String: original String before base64 encoding in Java
Base64 Encoded String : b3JpZ2luYWwgU3RyaW5nIGJlZm9yZSBiYXNlNjQgZW5jb2RpbmcgaW4gSmF2YQ==
Base 64 Decoded  String : original String before base64 encoding in Java
 类似资料:
  • 问题内容: 您能否指导我如何将图像从URL转换为base64编码? 问题答案: 我认为应该是:

  • 它可能是一个重复的,但我面临一些问题,将图像转换为以发送。我试过这段代码,但它给了我错误的编码字符串。 输出:[b@677327b6 但是我在许多在线编码器中将这个相同的图像转换为并且它们都给出了正确的Base64大字符串。 编辑:怎么是复制品??这个链接是我的重复,没有给出我想要的字符串转换的解决方案。 我错过了什么??

  • 我有以下java代码: 我想将其转换为smali code 我怎么能这样做?(我尝试了java2smali插件,但失败了)

  • 上传图像API需要二进制流。我尝试了新的及其方法,但它不起作用!二进制字符串和二进制流似乎不是一回事,所以我改变了我的方式,尝试了方法(因为我需要预览图像),现在我想知道: 1)如何使用JS将转换为二进制流? 当我使用时,响应如下(数据A):

  • 在我的Spring Boot项目中,我只是直接返回一个列表。然后我可以在Postman中看到JSON响应。我没有做任何事情将Java对象转换为JSON。它是如何工作的?JSON是Java交换数据的默认方式吗? 这是一个控制器示例。 这是我pom.xml的依赖部分