กลับไปหน้าบทความ

อ่าน 4 นาที

การเข้ารหัสไบนารีเป็นข้อความ

การ เข้ารหัสไบนารีเป็นข้อความ คือ รูปแบบ การเข้ารหัส ข้อมูล ที่แสดง ข้อมูลไบนารี เป็น ข้อความธรรมดา โดยทั่วไป ข้อมูลไบนารีประกอบด้วยลำดับของ ค่า ไบต์ (หรือ อ็อกเท็ต ) 8 บิตใดๆ...

การเข้ารหัสไบนารีเป็นข้อความ

( เรียนรู้วิธีและเวลาในการลบข้อความนี้ )

การเข้ารหัสไบนารีเป็นข้อความคือ รูปแบบ การเข้ารหัสข้อมูล ที่แสดงข้อมูลไบนารีเป็นข้อความธรรมดาโดยทั่วไป ข้อมูลไบนารีประกอบด้วยลำดับของ ค่า ไบต์ (หรืออ็อกเท็ต ) 8 บิตใดๆ และข้อความจะจำกัดอยู่เฉพาะ รหัส อักขระที่พิมพ์ได้ ของระบบ การเข้ารหัสอักขระที่ใช้กันทั่วไปเช่นASCIIโดยทั่วไป ข้อมูลไบนารีใดๆ จะมีค่าที่ไม่ใช่รหัสอักขระที่พิมพ์ได้ ดังนั้นซอฟต์แวร์ที่ออกแบบมาเพื่อจัดการเฉพาะข้อความจึงไม่สามารถประมวลผลข้อมูลดังกล่าวได้ การเข้ารหัสข้อมูลไบนารีเป็นข้อความช่วยให้ซอฟต์แวร์ที่ไม่สามารถประมวลผลข้อมูลไบนารีใดๆ ได้ สามารถประมวลผลข้อมูลที่ไม่ได้จัดเก็บเป็นข้อความโดยธรรมชาติได้ ซอฟต์แวร์ไม่สามารถตีความข้อมูลได้ แต่สามารถดำเนินการที่เป็นประโยชน์กับข้อมูลได้ เช่นการส่งและการจัดเก็บ

เอกสาร PGP ( RFC  9580 ) ใช้คำว่า "ASCII armor" สำหรับการเข้ารหัสไบนารีเป็นข้อความเมื่อกล่าวถึง Base64

โดยหลักการแล้ว การเข้ารหัสเลขฐานสองเป็นข้อความแตกต่างจากการแสดงค่าตัวเลขในฐานตัวเลข ( radix ) ตัวอย่างเช่นเลขฐานสิบเป็นรูปแบบการแสดงค่าในฐาน 10 แต่ไม่ใช่การเข้ารหัสเลขฐานสองเป็นข้อความ การเข้ารหัสเลขฐานสองเป็นข้อความอาจคิดค้นขึ้นโดยใช้การแสดงค่าเลขฐานสิบสำหรับข้อมูลที่เข้ารหัส แต่ระบบดังกล่าวจะใช้เพียง 10 ค่าจากลำดับการเข้ารหัส 4 บิต เหลืออีก 6 ค่าที่ไม่ได้ใช้ การเข้ารหัสที่มีประสิทธิภาพมากกว่าจะใช้ค่าทั้ง 16 ค่า นี่คือ Base16 ซึ่งใช้เลขฐานสิบหกในการเข้ารหัสลำดับ 4 บิตแต่ละลำดับ ที่น่าสังเกตคือ เนื่องจาก 16 เป็นกำลังของสอง Base16 และเลขฐานสิบหกจึงแยกแยะได้ยากในทางปฏิบัติ แม้ว่าจะแตกต่างกันในเชิงแนวคิดก็ตาม

การเข้ารหัสแบบ Escape เช่นการเข้ารหัสแบบเปอร์เซ็นต์และการเข้ารหัสแบบ Quoted-Printableก็ช่วยให้สามารถแสดงข้อมูลไบนารีใดๆ ก็ได้ในรูปแบบข้อความเช่นกัน แต่ในลักษณะที่แตกต่างกันอย่างมาก การเข้ารหัสไบนารีเป็นข้อความเกี่ยวข้องกับการเข้ารหัสลำดับอินพุตทั้งหมด ในขณะที่การเข้ารหัสแบบ Escape ช่วยให้สามารถฝังข้อมูลไบนารีลงในข้อมูลที่เป็นข้อความอยู่แล้วได้

ใช้

การส่งข้อมูลไบนารีในรูปแบบข้อความ

การเข้ารหัสไบนารีเป็นข้อความช่วยให้สามารถส่งข้อมูลผ่านช่องทางการสื่อสารที่ไม่รองรับข้อมูลไบนารีแบบไม่จำกัด (เช่นอีเมลหรือNNTP ) หรือไม่ใช่แบบ 8 บิตได้การเข้ารหัสนี้ช่วยให้สามารถส่งข้อมูลไบนารีผ่านโปรโตคอลการสื่อสารที่ออกแบบมาเพื่อส่ง ข้อความ ที่มนุษย์อ่านได้ (เช่น ภาษาอังกฤษ) บ่อยครั้งที่โปรโตคอลดังกล่าวรองรับเฉพาะค่าอักขระ 7 บิต (และหลีกเลี่ยงรหัสควบคุมบางอย่าง) และอาจต้องมีการขึ้นบรรทัดใหม่ที่ช่วงเวลาสูงสุดที่กำหนด และอาจไม่รักษาระยะห่างระหว่างอักขระดังนั้น เฉพาะอักขระ ASCII ที่พิมพ์ได้ 94 ตัวเท่านั้น ที่ปลอดภัยในการใช้ส่งข้อมูล

มาตรฐานการเข้ารหัสข้อความ ASCII ใช้ 7 บิตในการเข้ารหัสอักขระ ด้วยวิธีนี้จึงสามารถเข้ารหัสค่าที่ไม่ซ้ำกันได้ 128 ค่า (เช่น 2⁷ ) ( 0–127) เพื่อแสดงตัวอักษร ตัวเลข และเครื่องหมายวรรคตอนที่ใช้กันทั่วไปในภาษาอังกฤษ รวมถึง อักขระควบคุมที่ไม่สามารถพิมพ์ได้บางส่วนตัวอย่างเช่น ตัวอักษรพิมพ์ใหญ่Aแทนด้วย 65 (41 16 , 100 0001 2 ) ตัวเลข2แทนด้วย 50 (32 16 , 011 0010 2 ) วงเล็บปีกกาขวา}แทนด้วย 125 (7D 16 , 111 1101 2 ) และอักขระควบคุมการขึ้นบรรทัดใหม่CRแทนด้วย 13 (0D 16 , 000 1101 2 )

ในทางตรงกันข้าม คอมพิวเตอร์ส่วนใหญ่จัดเก็บข้อมูลในหน่วยความจำโดยจัดเรียงเป็นไบต์ แปดบิต (หรือที่เรียกว่าอ็อกเท็ต ) ไฟล์ที่มีโค้ดที่เครื่องสามารถประมวลผลได้และข้อมูลที่ไม่ใช่ข้อความโดยทั่วไปจะมีค่าไบต์แปดบิตที่เป็นไปได้ทั้งหมด 256 ค่า โปรแกรมคอมพิวเตอร์จำนวนมากอาศัยความแตกต่างระหว่างข้อความ เจ็ดบิตและข้อมูล ไบนารีแปดบิตและจะไม่ทำงานอย่างถูกต้องหากมีอักขระที่ไม่ใช่ ASCII ปรากฏในข้อมูลที่คาดว่าจะประกอบด้วยข้อความ ASCII เท่านั้น ตัวอย่างเช่น หากค่าของบิตที่แปดไม่ได้รับการรักษาไว้ โปรแกรมอาจตีความค่าไบต์ที่มากกว่า 127 เป็นสัญญาณบอกให้โปรแกรมทำงานบางอย่าง

บ่อยครั้งที่เราต้องการส่งข้อมูลที่ไม่ใช่ข้อความผ่านระบบที่ใช้ข้อความ เช่น การแนบรูปภาพไปกับอีเมล เพื่อให้บรรลุเป้าหมายนี้ ข้อมูลจะถูกเข้ารหัสในรูปแบบใดรูปแบบหนึ่ง เช่น ข้อมูล 8 บิตจะถูกเข้ารหัสเป็นอักขระ ASCII 7 บิต (โดยทั่วไปจะใช้เฉพาะตัวอักษร ตัวเลข และเครื่องหมายวรรคตอน ซึ่งเป็นอักขระที่พิมพ์ได้ของ ASCII) เมื่อถึงปลายทางแล้ว ข้อมูลจะถูกถอดรหัสกลับเป็นรูปแบบ 8 บิต กระบวนการนี้เรียกว่า การเข้ารหัสไบนารีเป็นข้อความ โปรแกรมหลายโปรแกรมทำการแปลงนี้เพื่อให้สามารถส่งข้อมูลได้ เช่นPGPและGNU Privacy Guard

การเข้ารหัสข้อความธรรมดา

วิธีการเข้ารหัสแบบไบนารีเป็นข้อความยังถูกใช้เป็นกลไกในการเข้ารหัสข้อความธรรมดาด้วยระบบบางระบบมีชุดอักขระที่จำกัดกว่าที่สามารถรองรับได้ ไม่เพียงแต่จะไม่รองรับ 8 บิตอย่างสมบูรณ์เท่านั้น บางระบบยังไม่สามารถรองรับอักขระ ASCII ที่พิมพ์ได้ทุกตัวด้วยซ้ำ ระบบอื่นๆ มีข้อจำกัดเกี่ยวกับจำนวนอักขระที่อาจปรากฏระหว่างการขึ้นบรรทัดใหม่ เช่น ข้อจำกัด "1000 อักขระต่อบรรทัด" ของ ซอฟต์แวร์ Simple Mail Transfer Protocol บางตัว ตามที่อนุญาตโดยRFC 2821ระบบอื่นๆ ยังเพิ่มส่วนหัวหรือส่วนท้ายให้กับข้อความ โปรโตคอลบางตัวที่ไม่ค่อยได้รับการยอมรับแต่ยังคงใช้งานอยู่ ใช้การส่งสัญญาณแบบอินแบนด์ซึ่งทำให้เกิดความสับสนหากมีรูปแบบเฉพาะปรากฏในข้อความ ตัวอย่างที่รู้จักกันดีที่สุดคือสตริง "From" (รวมถึงช่องว่างต่อท้าย) ที่จุดเริ่มต้นของบรรทัด ซึ่งใช้ในการแยกข้อความอีเมลในรูปแบบไฟล์ mbox 

ด้วยการใช้การเข้ารหัสแบบไบนารีเป็นข้อความกับข้อความที่เป็นข้อความธรรมดาอยู่แล้ว จากนั้นถอดรหัสที่ปลายอีกด้านหนึ่ง ระบบดังกล่าวจึงดูโปร่งใส อย่างสมบูรณ์ บางครั้งเรียกวิธีการนี้ว่า 'การปกป้อง ASCII' ตัวอย่างเช่น คอมโพเนนต์ ViewState ของASP.NETใช้ การเข้ารหัส base64เพื่อส่งข้อความอย่างปลอดภัยผ่าน HTTP POST เพื่อหลีกเลี่ยงการชนกันของตัวคั่น

ตัวอย่าง

ตารางด้านล่างนี้อธิบายถึงวิธีการเข้ารหัสไบนารีเป็นข้อความที่สำคัญ ประสิทธิภาพที่แสดงคืออัตราส่วนระหว่างจำนวนบิตในข้อมูลนำเข้าและจำนวนบิตในข้อมูลที่เข้ารหัสแล้ว สำหรับการเข้ารหัสใดๆ ที่แปลง ความเป็นไปได้ของข้อมูลนำเข้า n แบบ ไปเป็นอักขระ 8 บิตหนึ่งตัว ประสิทธิภาพจะเท่ากับ log2( n )/8

การเข้ารหัสประสิทธิภาพการนำภาษาโปรแกรมไปใช้ความคิดเห็น
แอสซีไอ8580%awk เก็บถาวรเมื่อ 2014-12-29 ที่Wayback Machine , C , C (2) , C# , F# , Go , Java Perl , Python , Python (2)การเข้ารหัสแบบนี้มีหลายรูปแบบ เช่นBase85 , btoaเป็นต้น
ฐาน 1650%ภาษาส่วนใหญ่เนื่องจากใช้ระบบเลขฐานสิบหก จึงมีรูปแบบสำหรับตัวพิมพ์ใหญ่ ตัวพิมพ์เล็ก หรือตัวพิมพ์ ทั้งสองแบบ
ฐาน 2658.3%ใช้ในการแปลง แฮ ช SHA-256เป็นสตริงตัวพิมพ์ใหญ่ทั้งหมดในInChIKey (ระบบดัชนีมาตรฐานของโครงสร้างทางเคมี) [ 1 ]และ SID (การระบุลำดับ ระบบดัชนีของแอมพลิคอน PCR ในนิติวิทยาศาสตร์) [ 2 ] InChIKey ใช้การแมปสองประเภทโดยเฉพาะ: 14b:3ch, 9b:2ch
ฐาน 3262.5%ANSI C , Delphi , Go , Java , C#, F# , Python 
ฐาน 3664.6%bash, C , C++ , C# , Java , Perl , PHP , Python , Visual Basic, Swiftและอื่นๆ อีกมากมาย ใช้เฉพาะตัวเลข (0–9) และตัวอักษร พิมพ์เล็ก (a–z) เท่านั้น โดยทั่วไประบบเปลี่ยนเส้นทาง URL เช่น TinyURLหรือ SnipURL/Snipr จะใช้เป็นตัวระบุตัวอักษรและตัวเลขขนาดกะทัดรัด
เบส4568.6% (97% [ a ] ​​)โก , ไพธอนกำหนดไว้ในข้อกำหนด IETF RFC 9285 สำหรับการรวมข้อมูลไบนารีไว้ในรหัส QRอย่าง กะทัดรัด [ 3 ]
เบส5672.6%PHP , Python , Goเช่นเดียวกับ Base58 แต่ยังไม่รวมอักขระ1และตัวพิมพ์เล็ก O ( o) เพื่อลดความเสี่ยงของการฉ้อโกงและข้อผิดพลาดของมนุษย์[ 4 ]
เบส5873.2%C , C++ , Python , C# , Javaคล้ายกับ Base64 แต่ไม่รวมอักขระที่ไม่ใช่ตัวอักษรและตัวเลข ( +และ/) และคู่ของอักขระที่มักดูคลุมเครือเมื่อแสดงผล เช่น ศูนย์ ( 0) และตัวพิมพ์ใหญ่ O ( O) และตัวพิมพ์ใหญ่ I ( I) และตัวพิมพ์เล็ก L ( l) Base58 ใช้ในการแสดง ที่อยู่ของ บิตคอยน์สำหรับSegWitนั้น Base58 ถูกแทนที่ด้วย Base32
Base58 ในซอร์สโค้ดดั้งเดิมของบิตคอยน์
เบส6274.4%รัสท์ , ไพธอนคล้ายกับ Base64 แต่ประกอบด้วยตัวอักษรและตัวเลขเท่านั้น
เบส6475.0%awk เก็บถาวรเมื่อ 2014-12-29 ที่Wayback Machine , C , C (2) , Delphi , Go , Pythonและอื่นๆ อีกมากมายเป็นรูปแบบการเข้ารหัสที่ใช้กันมาตั้งแต่แรกและยังคงได้รับความนิยม โดยได้รับการกำหนดไว้เป็นครั้งแรกในRFC 989เมื่อปี 1987  
เบส8580.0%C , Python , Python (2)เวอร์ชันปรับปรุงของ Ascii85
เบสเอ็กซ์เอ็มแอล[ 5 ]80% ± 6 ตัวอักษรC Python JavaScriptการเข้ารหัสเพื่อใส่ข้อมูลลงใน XML
เบส91 [ 6 ]81.3%ซี# เอฟ#รูปแบบความกว้างคงที่
เบสE91 [ 7 ]81.3%C, Java, PHP, 8086 Assembly, AWK C#, F# , Rustรูปแบบความกว้างแปรผัน
เบส94 [ 8 ]81.9%Python , C , Rust 
ฐาน 122 [ 9 ]87.5%JavaScript , Python , Java , Base125 Python และ JavaScript , Go , Cเข้ารหัสเป็น UTF-8 ดังนั้นประสิทธิภาพที่ได้จึงแตกต่างจากที่คาดการณ์ไว้ทางทฤษฎี
เบค3262.5% - มีค่าใช้จ่ายเพิ่มเติมอย่างน้อย 8 ตัวอักษร (ป้ายกำกับ, ตัวคั่น, ECC 6 ตัวอักษร)C, C++, JavaScript , Go , Python, Haskell , Ruby , Rustข้อกำหนด[ 10 ]ใช้ใน Bitcoin และLightning Network [ 11 ]ส่วนข้อมูลจะถูกเข้ารหัสแบบ Base32 โดยสามารถตรวจสอบและแก้ไขอักขระที่พิมพ์ผิดได้สูงสุด 6 ตัวโดยใช้รหัส BCH 6 ตัวที่ส่วนท้าย ซึ่งจะตรวจสอบ/แก้ไขส่วนที่มนุษย์อ่านได้ด้วย ตัวแปร Bech32m มีการเปลี่ยนแปลงเล็กน้อยที่ทำให้ทนทานต่อการเปลี่ยนแปลงความยาวมากขึ้น[ 12 ]
บินเฮ็กซ์75%เพิร์ล , ซี , ซี (2)MacOS คลาสสิก
อินเทล เฮ็กซ์≲50%ไลบรารี C , C++โดยทั่วไปใช้สำหรับโปรแกรมชิปหน่วยความจำ EPROMและNOR flash
ไมม์ดูQuoted-printableและBase64ดูQuoted-printableและBase64คอนเทนเนอร์เข้ารหัสสำหรับการจัดรูปแบบคล้ายอีเมล
S-record (Motorola hex)49.6%ไลบรารี C , C++โดยทั่วไปใช้สำหรับโปรแกรม ชิปหน่วยความจำ EPROMและNOR flash 49.6% สมมติว่าแต่ละระเบียนมี 255 ไบต์ไบนารี
เทคโทรนิกซ์ เฮกซ์≲50%โดยทั่วไปใช้สำหรับโปรแกรมชิป EPROMและชิปหน่วยความจำ NOR flash
ท็อกซ์เอ็มเอสตัวแปร TypeScript, CLI , DartTxMS บีบอัดข้อมูลไบนารีให้เป็นรูปแบบข้อความที่อ่านได้โดยใช้การเข้ารหัสไบนารีเป็นข้อความ และอนุญาตให้แปลงกลับเป็นเลขฐานสิบหกได้
uuencodingประมาณ 60% ( สูงสุด 70% )Perl , C , Delphi , Java , Pythonและอาจจะมีอีกหลายภาษาเป็นรูปแบบการเข้ารหัสยุคแรกที่พัฒนาขึ้นในปี 1980 สำหรับการคัดลอกข้อมูลจากระบบ Unix ไปยังระบบ Unixปัจจุบันถูกแทนที่ด้วย MIME และyEnc เป็นส่วนใหญ่
xxencoding~75% (คล้ายกับการเข้ารหัส Uu)ซีเดลฟีมีการเสนอ (และบางครั้งก็ใช้) เป็นทางเลือกแทนการเข้ารหัสแบบ Uu เพื่อหลีกเลี่ยงปัญหาการแปลงชุดอักขระระหว่างระบบ ASCII และ EBCDIC ซึ่งอาจทำให้ข้อมูลที่เข้ารหัสแบบ Uu เสียหายได้
z85 ( ข้อกำหนด ZeroMQ: 32/Z85 )80% (คล้ายกับ Ascii85/Base85)C (ภาษาดั้งเดิม), C# , Dart , Erlang , Go , Lua , Ruby , Rustและอื่นๆระบุชุดย่อยของ ASCII ที่คล้ายกับAscii85โดยละเว้นอักขระบางตัวที่อาจทำให้เกิดข้อผิดพลาดในโปรแกรม ( ` \ " ' _ , ;) รูปแบบนี้เป็นไปตามข้อกำหนด ZeroMQ spec:32/ Z85
RFC  1751 ( S/KEY [ 13 ] )33%ซี, ไพธอน

"ข้อตกลงสำหรับ คีย์ 128 บิต ที่มนุษย์อ่านได้ " ชุดคำภาษาอังกฤษขนาดเล็กนั้นง่ายกว่าสำหรับมนุษย์ในการอ่าน จดจำ และพิมพ์มากกว่าระบบการเข้ารหัสเลขฐานสิบหรือเลขฐานสองเป็นข้อความอื่นๆ[ 14 ]แต่ละจำนวน 64 บิตจะถูกแมปเป็นคำสั้นๆ หกคำ โดยแต่ละคำมีอักขระหนึ่งถึงสี่ตัว จากพจนานุกรมสาธารณะ 2048 คำ[ 13 ]

รูปแบบเก่าบางรูปแบบและปัจจุบันไม่ค่อยพบเห็น ได้แก่ BOO (base64) [ 15 ] BTOA (ซึ่งนิยามอย่างคลุมเครือว่า "ไบนารีเป็น ascii" ในอดีตคือ base85 ปัจจุบันคือ base64 ใน JavaScript) และการเข้ารหัส USR

Base64 (รวมถึงรูปแบบต่างๆ มากมาย เช่น uuencoding) แปลงลำดับของ 6 บิตเป็นอักขระที่พิมพ์ได้ เนื่องจากมีอักขระที่พิมพ์ได้มากกว่า 2⁶ =  64 ตัว จึงทำให้สามารถทำเช่นนี้ได้ ลำดับของไบต์ที่กำหนดจะถูกแปลงโดยการมองว่าเป็นกระแสของบิต แบ่งกระแสนี้ออกเป็นส่วนๆ ละ 6 บิต และสร้างลำดับของอักขระที่สอดคล้องกัน การเข้ารหัสที่แตกต่างกันจะแตกต่างกันในวิธีการแปลงระหว่างลำดับของบิตและอักขระ และในวิธีการจัดรูปแบบข้อความที่ได้

การเข้ารหัสบางแบบ (เช่น BinHex เวอร์ชันดั้งเดิม และการเข้ารหัสที่แนะนำสำหรับCipherSaber ) ใช้สี่บิตแทนที่จะเป็นหกบิต โดยแมปทุกลำดับที่เป็นไปได้ของ 4 บิตไปยัง ตัวเลขฐาน สิบหก มาตรฐาน 16 หลัก การใช้ 4 บิตต่ออักขระที่เข้ารหัสทำให้ผลลัพธ์ยาวกว่า base64 ถึง 50% แต่ทำให้การเข้ารหัสและการถอดรหัสทำได้ง่ายขึ้น การขยายแต่ละไบต์ในแหล่งข้อมูลอย่างอิสระเป็นสองไบต์ที่เข้ารหัสแล้วนั้นง่ายกว่าการขยาย 3 ไบต์ในแหล่งข้อมูลเป็น 4 ไบต์ที่เข้ารหัสแล้วของ base64

จากรหัส 192 รหัสแรกของPETSCII มี 164 รหัสที่มีการแสดงผลที่มองเห็นได้เมื่ออ้างอิง: 5 (สีขาว), 17–20 และ 28–31 (สีและการควบคุมเคอร์เซอร์), 32–90 (เทียบเท่า ASCII), 91–127 (กราฟิก), 129 (สีส้ม), 133–140 (ปุ่มฟังก์ชัน), 144–159 (สีและการควบคุมเคอร์เซอร์) และ 160–192 (กราฟิก) [ 16 ]ในทางทฤษฎีแล้วสิ่งนี้อนุญาตให้มีการเข้ารหัส เช่น ฐาน 128 ระหว่างเครื่องที่พูด PETSCII

ดูเพิ่มเติม

หมายเหตุ

  1. ^การเข้ารหัสสำหรับการสร้างคิวอาร์โค้ดจะเลือกวิธีการเข้ารหัสให้ตรงกับชุดอักขระที่ป้อนเข้ามาโดยอัตโนมัติ โดยเข้ารหัสอักขระตัวอักษรและตัวเลข 2 ตัวใน 11 บิต และ Base45 จะเข้ารหัส 16 บิตเป็นอักขระดังกล่าว 3 ตัว ดังนั้นประสิทธิภาพจึงอยู่ที่การเข้ารหัสข้อมูลไบนารี 32 บิตใน 33 บิต: 97%
ดึงข้อมูลมาจาก " https://en.wikipedia.org/w/index.php?title=Binary-to-text_encoding&oldid=1358555015 "

สรุปเนื้อหา

ข้อมูลสำคัญจากบทความ

ข้อมูลสำคัญเกี่ยวกับ การเข้ารหัสไบนารีเป็นข้อความ

การ เข้ารหัสไบนารีเป็นข้อความ คือ รูปแบบ การเข้ารหัส ข้อมูล ที่แสดง ข้อมูลไบนารี เป็น ข้อความธรรมดา โดยทั่วไป ข้อมูลไบนารีประกอบด้วยลำดับของ ค่า ไบต์ (หรือ อ็อกเท็ต ) 8 บิตใดๆ...

การส่งข้อมูลไบนารีในรูปแบบข้อความ

การเข้ารหัสไบนารีเป็นข้อความช่วยให้สามารถส่งข้อมูลผ่าน ช่องทางการสื่อสาร ที่ไม่รองรับข้อมูลไบนารีแบบไม่จำกัด (เช่น อีเมล หรือ NNTP ) หรือไม่ใช่ แบบ 8 บิตได้ การเข้ารหัสนี้ช่วยให้สามารถส่งข้อมูลไบนารีผ่าน โปรโตคอลการสื่อสาร ที่ออกแบบมาเพื่อส่ง ข้อความ...

การเข้ารหัสข้อความธรรมดา

วิธีการเข้ารหัสแบบไบนารีเป็นข้อความยังถูกใช้เป็นกลไกในการเข้ารหัส ข้อความธรรมดาด้วย ระบบบางระบบมีชุดอักขระที่จำกัดกว่าที่สามารถรองรับได้ ไม่เพียงแต่จะไม่ รองรับ 8 บิตอย่างสมบูรณ์ เท่านั้น บางระบบยังไม่สามารถรองรับอักขระ ASCII ที่พิมพ์ได้ทุกตัวด้วยซ้ำ...

ตัวอย่าง

ตารางด้านล่างนี้อธิบายถึงวิธีการเข้ารหัสไบนารีเป็นข้อความที่สำคัญ ประสิทธิภาพที่แสดงคืออัตราส่วนระหว่างจำนวนบิตในข้อมูลนำเข้าและจำนวนบิตในข้อมูลที่เข้ารหัสแล้ว สำหรับการเข้ารหัสใดๆ ที่แปลง ความเป็นไปได้ของข้อมูลนำเข้า n แบบ ไปเป็นอักขระ 8 บิตหนึ่งตัว...