В процессе разработки и применения клиенту и серверу часто необходимо передавать данные. Когда важна частная информация, разработчики, естественно, будут думать о шифровании ее. Даже если это перехватывается «внимательными людьми» во время процесса передачи, информация не будет просочиться. Я считаю, что многие разработчики слышали об алгоритмах шифрования, таких как шифрование MD5, шифрование Base64, шифрование DES, шифрование AES, шифрование RSA и т. Д. Простое шифрование может быть выполнено с помощью или и т. Д.
Ключ операции ^ 0x01, используемый в примере кода, может настроить ваши собственные правила. Определите свои собственные операции, чтобы гарантировать, что обратимые данные не потеряны. Ключ также может быть определен, динамический ключ.
Код Java
public Static String Myencode (String Str) бросает UnsupportEncodingException {byte [] strbytes = str.getBytes ("utf-8"); byte [] newstrbyte = new Byte [strbytes.length]; for (int i = 0; i <strbytes.length; i ++) {newstrbyte [i] = (byte) (strbytes [i] ^ 0x01); } вернуть новую строку (Newstrbyte); } String encodestr = myencode ("idmmna/" 547 ''+) ')%/"a ^*((! Vnsme"); System.out.println (encodestr);код JavaScript
Получите байт UTF-8
function toutf8array (str) {var utf8 = []; for (var i = 0; i <str.length; i ++) {var charcode = str.charcodeat (i); if (charcode <0x80) utf8.push (charcode); else if (charcode <0x800) {utf8.push (0xc0 | (charcode >> 6), 0x80 | (charcode & 0x3f)); } else if (charcode <0xd800 || charcode> = 0xe000) {utf8.push (0xe0 | (charcode >> 6), 0x80 | (charcode & 0x3f)); } else if (charcode <0xd800 || charcode> = 0xe000) {utf8.push (0xe0 | (charcode >> 12), 0x80 | ((charcode >> 6) & 0x3f), 0x80 | (Charcode & 0x3f)); } // Суррогатная пара else {i ++; // UTF-16 Кодирует 0x10000-0x10ffff по // Вычитание 0x10000 и разделение // 20 бит 0x0-0xfffff на две половинки Charcode = 0x10000 + (((charcode & 0x3ff) << 10) | (str.charcodeat (i) & 0x3ff)); utf8.push (0xf0 | (charcode >> 18), 0x80 | ((charcode >> 12) & 0x3f), 0x80 | ((charcode >> 6) & 0x3f), 0x80 | (Charcode & 0x3f)); }} return utf8; }Получить байт и выполнить ^ расчет
bytes = stringToAsciibytearray (str); for (var i = 0; i <bytes.length; i ++) {var newbyte = (bytes [i]^0x01); // newbyte = (newbyte^0x01); console.log (string.fromCharcode (newbyte)); encodestr += string.fromChorde (NewByte); }; console.log (encodestr);Суммировать
Выше приведено все содержание этой статьи о Java & JavaScript пользовательской зашифрованной зашифрованной примеры кода передачи данных, я надеюсь, что это будет полезно для всех. Заинтересованные друзья могут продолжать ссылаться на этот сайт:
Java Exploration: зашифрованные и расшифрованные примеры кода.
Принцип алгоритма MultiMode String Principle и код реализации Java
Полный пример кода алгоритма Java для реализации красного и черного дерева
Если есть какие -либо недостатки, пожалуйста, оставьте сообщение, чтобы указать это.