cari

Rumah  >  Soal Jawab  >  teks badan

java - 为什么des加密后输出乱码?

大家讲道理大家讲道理2770 hari yang lalu1105

membalas semua(8)saya akan balas

  • PHPz

    PHPz2017-04-18 10:11:45

    Kerana ia bukan lagi data rentetan UTF-8, sayang. Anda menyulitkannya. DES menjana data binari yang tidak boleh dibaca Jika anda memaksa String baharu untuk ditafsirkan mengikut pengekodan UTF-8, sudah tentu ia akan kacau jika ia boleh dibaca secara langsung, apa gunanya menyulitkannya?
    Oleh kerana kebanyakan data yang disulitkan berdasarkan algoritma matematik menjana blok binari atau data strim. Hanya selepas penyahsulitan teks asal boleh dibaca.
    Jika anda mahu data yang disulitkan disimpan sebagai teks atau penghantaran HTTP, anda boleh mengekod data dengan BASE64 Selepas pengekodan, ia akan menjadi rentetan ASCII tanpa aksara yang kacau (sudah tentu manusia masih tidak dapat memahaminya). .

    balas
    0
  • ringa_lee

    ringa_lee2017-04-18 10:11:45

    Selepas penyulitan, ia ialah tatasusunan bait Tidak semua tatasusunan bait boleh ditukar kepada rentetan melalui String() baharu

    balas
    0
  • 高洛峰

    高洛峰2017-04-18 10:11:45

    Ini mungkin kerana anda tidak memahami perbezaan antara aliran data bait memori dan rentetan
    Jika anda telah menggunakan editor teks untuk melihat data dalam paparan perenambelasan, maka anda tidak akan mempunyai soalan ini.
    String Mengapa rentetan boleh dipaparkan adalah kerana data memori mematuhi peraturan pengekodan tertentu, seperti pengekodan UTF-8
    Tetapi secara amnya data yang disulitkan ialah aliran data memori yang lengkap, yang tidak mematuhi peraturan pengekodan rentetan aksara, jadi apabila. anda secara paksa menggunakan peraturan pengekodan rentetan untuk menghuraikannya, ia akan menjadi "kod bercelaru".

    Tetapi jika tujuan penyulitan tidak betul, maka orang ramai tidak dapat memahaminya

    Ini hanyalah watak-watak yang bercelaru

    balas
    0
  • 黄舟

    黄舟2017-04-18 10:11:45

    Selepas penyulitan, ia sepatutnya tidak boleh dibaca.

    balas
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-18 10:11:45

    Terdapat artikel serupa di sini https://segmentfault.com/q/10...

    balas
    0
  • PHPz

    PHPz2017-04-18 10:11:45

    Mengapa anda fikir ia tidak omong kosong?

    balas
    0
  • PHP中文网

    PHP中文网2017-04-18 10:11:45

    Selepas penyulitan, ia biasanya tatasusunan bait, yang boleh ditukar menjadi rentetan perenambelasan

    balas
    0
  • 怪我咯

    怪我咯2017-04-18 10:11:45

    Selepas penyulitan, anda boleh menggunakan Base64,

    balas
    0
  • Batalbalas