Was sind das für Daten?
Hallo, ich habe in JavaScript (ich hasse es) mit CryptoJS.AES.encode einen String verschlüsselt und mit decode wieder entschlüsselt. Leider kommt beim Entschlüsseln komisches Zeug raus. Was ist das, wohin muss ich das konvertieren, damit da am Ende meine gewollter String steht?
Code fürs Dekodieren:
let decryptedData = CryptoJS.AES.decrypt(response, pass).toString();
decryptedData = decryptedData.toString(CryptoJS.enc.Utf8);
Die response: https://pastebin.com/dVm5vkWW
Was rauskommt: https://pastebin.com/QhhJcwVq
Verschlüsselung: CryptoJS.AES.encrypt(daten, pass).toString()
EDIT: Problem hat sich gelößt, der Server hat die Daten falsch herausgegeben :facepalm:
2 Antworten
![](https://images.gutefrage.net/media/user/FaTech/1708715131049_nmmslarge__0_0_500_500_77a0f43d5804c908f40c8a1b0c260400.png?v=1708715131000)
Probier Mal ein base64 decode. Vielleicht hilft das. Vielleicht wurde irgendwo etwas zu base64 encoded. Das wird häufig bei binären Daten gemacht, welche auch bei AES entstehen
![](https://images.gutefrage.net/media/user/FaTech/1708715131049_nmmslarge__0_0_500_500_77a0f43d5804c908f40c8a1b0c260400.png?v=1708715131000)
![](https://images.gutefrage.net/media/default/user/14_nmmslarge.png?v=1551279448000)
Jetzt sind die Daten noch weirder: õÝ7ÑþÞi®=kfºyý<s�ÝÛ�ýsnÛÛ�|Ù½�mÎÜáÎ_íï5o½õkM^sMúsÇ´Ómy÷v�ß�<oÝ�á¯5sÞøsWzÝçxëÝùï��áç{×�9Ñ÷vÓ½Ýu¶´ÝÞ÷yöôkW�÷×�i½üß�½÷®Þßmx÷WÜß�{sßvi·<sfúë¾û×¾ûo·7å·|÷�·Ýï�q\wO�×øwÍöÓ®�íÆõÓ½]ß�ú{Ç]yîôÕîùw×ùog7ïßZëMzñ½´ë½}sÆúÑçuÙïuiÎ5÷½yåÎ;i½<ëÎ6oÏ8ënÜíï{ó]�i¿<å¾úÝî[×®Þ×NÝÕ·=éý6Ó�¸i§�}Æôãg¸ó^^çN}{M�á¿{Ó�zÝÆÚi¯|ß·ºkWÞï��Û®_ÝÎ�o^xÙ¾4óg¸Ó¾5ó��Ó×ýs~4{�öáÞ�íÍw÷¯]m÷�k_\×_tqíµã½4ó}Üåþøw^:çÞ¹o�[Û·¸i·ZóÏ�ã§|yï]Ñ¿[ñÞýç�7óÞ¼{M8Ó~ÛÛ½Üéþ<�Ö�}ƺ�}]ëmûëß�çǹÑ÷zo~ßuþôÛfùÙ®ýÛ×tݦ�Û�øuý{Ý×ýÝtÙ¦ÞyÝ]å×ýw·yÛ�]{M^÷Íô×·ö߶Üó�¼Ùî»{Í_÷�ösÝùwO]w^�Ñδéýý
![](https://images.gutefrage.net/media/user/MonkeyKing/1720109156640_nmmslarge__0_0_400_400_a7448469a17c2ce8ed07251058ff274b.jpg?v=1720109157000)
Die zweite Zeile scheint mir überflüssig, viellecht liegt es daran
![](https://images.gutefrage.net/media/default/user/14_nmmslarge.png?v=1551279448000)
Tatsächlich ist sie überlüssig, es ändert aber nix...
![](https://images.gutefrage.net/media/user/MonkeyKing/1720109156640_nmmslarge__0_0_400_400_a7448469a17c2ce8ed07251058ff274b.jpg?v=1720109157000)
![](https://images.gutefrage.net/media/default/user/14_nmmslarge.png?v=1551279448000)
(siehe Ergänzung in der Frage :) )
![](https://images.gutefrage.net/media/user/MonkeyKing/1720109156640_nmmslarge__0_0_400_400_a7448469a17c2ce8ed07251058ff274b.jpg?v=1720109157000)
probier mal
let decryptedData = CryptoJS.AES.decrypt(response, pass).toString(CryptoJS.enc.Utf8);
![](https://images.gutefrage.net/media/user/MonkeyKing/1720109156640_nmmslarge__0_0_400_400_a7448469a17c2ce8ed07251058ff274b.jpg?v=1720109157000)
Ansonsten mal direkt verschlüsseln und wieder entschlüsseln ohne request. damit grenzt du den Fehler ein
![](https://images.gutefrage.net/media/default/user/14_nmmslarge.png?v=1551279448000)
Dann kommt eine Fehlermeldung "Uncaught Error: Malformed UTF-8 data"
![](https://images.gutefrage.net/media/default/user/14_nmmslarge.png?v=1551279448000)
Da kommt es im Klartext raus, also denke ich mal, das der Fehler beim Server irgendwo liegt
Wo müsste der hin?