色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

java的md5加密和c

榮姿康1年前7瀏覽0評論

在計算機科學中,MD5是信息摘要算法的一種,用于將任意長度的信息壓縮成長度為128位的十六進制字符串。在Java中,可以使用MessageDigest類來實現MD5加密。以下是一個MD5加密的 Java代碼示例:

import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
public class MD5Example {
public static void main(String[] args) {
String passwordToHash = "password123";
String generatedPassword = null;
try {
MessageDigest md = MessageDigest.getInstance("MD5");
md.update(passwordToHash.getBytes());
byte[] bytes = md.digest();
StringBuilder sb = new StringBuilder();
for(int i=0; i< bytes.length ;i++)
{
sb.append(Integer.toString((bytes[i] & 0xff) + 0x100, 16).substring(1));
}
generatedPassword = sb.toString();
}
catch (NoSuchAlgorithmException e)
{
e.printStackTrace();
}
System.out.println(generatedPassword);
}
}

C語言同樣也提供了MD5加密功能,對于需要使用C語言實現的項目,可以使用MD5開源C語言庫。

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <openssl/md5.h>
char *md5(const char *str) {
int i;
MD5_CTX c;
unsigned char digest[16];
char *out = (char*) malloc(33);
MD5_Init(&c);
MD5_Update(&c, str, strlen(str));
MD5_Final(digest, &c);
for (i = 0; i < 16; ++i)
snprintf(&(out[i*2]), 16*2, "%02x", (unsigned int)digest[i]);
return out;
}
int main() {
char *password = "password123";
char *result = md5(password);
printf("%s\n", result);
free(result);
return 0;
}

總結:

Java和C語言都提供了MD5加密算法的實現方法,Java使用MessageDigest類,C語言可以使用MD5開源C語言庫來實現。任何需要保密的信息都可以使用MD5加密來確保數據安全。