目前,当我使用 java.security.signature 进行签名时,它会传回一个字符串。我似乎无法使用这个字符串,因为只有当我将字符串复制到 notepad++ 时才能看到特殊字符,如果我从那里删除这些特殊字符,我可以在我的程序中使用字符串的剩余部分。
在记事本中,它们看起来像带有 ACK GS STX SI SUB ETB BS VT 字样的黑盒子
我真的不明白它们是什么,所以很难说如何驾驭它们。
我可以运行一个函数来删除这些和可能相似的字符吗?
当我使用帖子中提供的 base64 类时,我无法返回签名
System.out.println(signature);
String base64 = Base64.encodeBytes(sig);
System.out.println(base64);
String sig2 = new String (Base64.decode(base64));
System.out.println(sig2);
给出输出
”zÌý¥y]žd”xKmËY³ÕN´Ìå}ÏBÊNÈ›`Αrp~jÖüñ0…Rõ…•éh?ÞÀ_û_¥ÂçªsÂk{6H7œÉ/”âtTK±Ï…Ã/Ùê²
lHrM/aV5XZ5klHhLbctZs9VOtMzlfc9Cyk7Im2DOkXJwfmoG1vzxMIVS9YWV6Wg/HQLewF/7X6XC56pzwmt7DzZIN5zJL5TidFRLsc+Fwy/Z6rIaNA2uVlCh3XYkWcu882tKt2RySSkn1heWhG0IeNNfopAvbmHDlgszaWaXYzY=
[B@15356d5