คำถามติดแท็ก base64

Base64 เป็นชุดของรูปแบบการเข้ารหัสที่แสดงข้อมูลไบนารีในรูปแบบสตริง ASCII

12
ทำไมเราถึงใช้ Base64
Wikipediaพูดว่า รูปแบบการเข้ารหัส Base64 มักใช้เมื่อไม่จำเป็นต้องเข้ารหัสข้อมูลไบนารีที่ต้องจัดเก็บและถ่ายโอนผ่านสื่อที่ออกแบบมาเพื่อจัดการกับข้อมูลที่เป็นข้อความ นี่คือเพื่อให้แน่ใจว่าข้อมูลยังคงไม่เปลี่ยนแปลงโดยระหว่างการขนส่ง แต่ไม่ใช่ว่าข้อมูลจะถูกจัดเก็บ / ส่งเป็นไบนารี่เสมอเพราะหน่วยความจำที่เครื่องของเรามีไบนารี่สโตร์และมันก็ขึ้นอยู่กับว่าคุณตีความมันอย่างไร ดังนั้นไม่ว่าคุณจะเข้ารหัสรูปแบบบิต010011010110000101101110เช่นเดียวกับManใน ASCII หรือTWFuใน Base64 ในที่สุดคุณก็จะเก็บรูปแบบบิตเดียวกัน หากการเข้ารหัสขั้นสุดท้ายอยู่ในรูปของเลขศูนย์และทุกเครื่องและสื่อสามารถจัดการกับมันได้จะเป็นอย่างไรถ้าข้อมูลถูกแสดงเป็น ASCII หรือ Base64 "สื่อที่ออกแบบมาเพื่อจัดการกับข้อมูลที่เป็นข้อความ" หมายความว่าอย่างไร พวกเขาสามารถจัดการกับ binary => พวกเขาสามารถจัดการกับอะไรก็ได้ ขอบคุณทุกคนฉันคิดว่าฉันเข้าใจแล้ว เมื่อเราส่งข้อมูลเราไม่สามารถมั่นใจได้ว่าข้อมูลจะถูกตีความในรูปแบบเดียวกับที่เราตั้งใจให้เป็น ดังนั้นเราจึงส่งข้อมูลที่เข้ารหัสในบางรูปแบบ (เช่น Base64) ที่ทั้งสองฝ่ายเข้าใจ ด้วยวิธีนี้แม้ว่าผู้ส่งและผู้รับจะตีความสิ่งเดียวกันต่างกัน แต่เนื่องจากพวกเขาเห็นด้วยกับรูปแบบการเข้ารหัสข้อมูลจะไม่ถูกตีความผิด จากตัวอย่าง Mark Byers ถ้าฉันต้องการส่ง Hello world! วิธีหนึ่งคือการส่งใน ASCII เช่น 72 101 108 108 111 10 119 111 114 108 …

12
รักษาความปลอดภัยโทเค็นแบบสุ่มใน Node.js
ในคำถามนี้ Erik จำเป็นต้องสร้างโทเค็นแบบสุ่มที่ปลอดภัยใน Node.js มีวิธีcrypto.randomBytesที่สร้างบัฟเฟอร์แบบสุ่ม อย่างไรก็ตาม base64 เข้ารหัสในโหนดไม่ URL ปลอดภัยก็มี/และ+แทนและ- _ดังนั้นวิธีที่ง่ายที่สุดในการสร้างโทเค็นที่ฉันพบคือ require('crypto').randomBytes(48, function(ex, buf) { token = buf.toString('base64').replace(/\//g,'_').replace(/\+/g,'-'); }); มีวิธีที่สง่างามกว่านี้ไหม?


2
ฉันจะถอดรหัสสตริงที่เข้ารหัส base64 ได้อย่างไร
ฉันพยายาม "ถอดรหัส" สตริง Base64 ต่อไปนี้: OBFZDTcPCxlCKhdXCQ0kMQhKPh9uIgYIAQxALBtZAwUeOzcdcUEeW0dMO1kbPElWCV1ISFFKZ0kdWFlLAURPZhEFQVseXVtPOUUICVhMAzcfZ14AVEdIVVgfAUIBWVpOUlAeaUVMXFlKIy9rGUN0VF08Oz1POxFfTCcVFw1LMQNbBQYWAQ == นี่คือสิ่งที่ฉันรู้เกี่ยวกับสตริงตัวเอง: สตริงเดิมถูกส่งผ่านครั้งแรกผ่านรหัสต่อไปนี้: private static string m000493(string p0, string p1) { StringBuilder builder = new StringBuilder(p0); StringBuilder builder2 = new StringBuilder(p1); StringBuilder builder3 = new StringBuilder(p0.Length); int num = 0; Label_0084: while (num < builder.Length) { int num2 = 0; while (num2 < p1.Length) …
258 c#  encoding  base64 

6
ทำไมฉันต้องใช้ 'b' เพื่อเข้ารหัสสตริงด้วย Base64
ต่อจากตัวอย่างไพธ อนฉันเข้ารหัสสตริงเป็น Base64 ด้วย: >>> import base64 >>> encoded = base64.b64encode(b'data to be encoded') >>> encoded b'ZGF0YSB0byBiZSBlbmNvZGVk' แต่ถ้าฉันออกจากผู้นำb: >>> encoded = base64.b64encode('data to be encoded') ฉันได้รับข้อผิดพลาดต่อไปนี้: Traceback (most recent call last): File "<stdin>", line 1, in <module> File "C:\Python32\lib\base64.py", line 56, in b64encode raise TypeError("expected bytes, not %s" % s.__class__.__name__) …


19
ฉันจะเข้ารหัส base64 บน iOS ได้อย่างไร
ฉันต้องการที่จะทำbase64การเข้ารหัสและถอดรหัส แต่ฉันไม่สามารถหาการสนับสนุนใด ๆ จาก SDKiPhone ฉันจะbase64เข้ารหัสและถอดรหัสโดยมีหรือไม่มีห้องสมุดได้อย่างไร
230 ios  objective-c  base64 

23
แปลงระหว่างสตริง UIImage และ Base64
ไม่มีใครรู้วิธีการแปลงเป็นUIImageสตริง Base64 แล้วย้อนกลับได้หรือไม่ ฉันมีรหัสด้านล่าง; ภาพต้นฉบับก่อนการเข้ารหัสเป็นสิ่งที่ดี แต่ฉันได้ภาพที่ว่างเปล่าหลังจากที่ฉันเข้ารหัสและถอดรหัส NSData *imageData = UIImagePNGRepresentation(viewImage); NSString *b64EncStr = [self encode: imageData]; NSString *base64String = [self encodeBase64:imageData];
224 ios  swift  uiimage  base64  nsdata 

12
Base 64 เข้ารหัสและถอดรหัสตัวอย่างรหัส
ไม่มีใครรู้วิธีถอดรหัสและเข้ารหัสสตริงใน Base64 โดยใช้ Base64 ฉันใช้รหัสต่อไปนี้ แต่มันไม่ทำงาน String source = "password"; byte[] byteArray = source.getBytes("UTF-16"); Base64 bs = new Base64(); //bs.encodeBytes(byteArray); System.out.println( bs.encodeBytes(byteArray)); //bs.decode(bs.encodeBytes(byteArray)); System.out.println(bs.decode(bs.encodeBytes(byteArray)));
214 java  android  base64 

15
วิธีบันทึก PNG อิมเมจฝั่งเซิร์ฟเวอร์จากสตริงข้อมูล base64
ฉันใช้เครื่องมือ JavaScript "Canvas2Image" ของ Nihilogic เพื่อแปลงภาพวาดผ้าใบเป็นรูปภาพ PNG สิ่งที่ฉันต้องการตอนนี้คือการเปลี่ยนสตริง base64 ที่เครื่องมือนี้สร้างเป็นไฟล์ PNG จริงบนเซิร์ฟเวอร์โดยใช้ PHP ในระยะสั้นสิ่งที่ฉันกำลังทำคือการสร้างไฟล์ในฝั่งไคลเอ็นต์โดยใช้ Canvas2Image จากนั้นดึงข้อมูลที่เข้ารหัส 64 ฐานและส่งไปยังเซิร์ฟเวอร์โดยใช้ AJAX: // Generate the image file var image = Canvas2Image.saveAsPNG(canvas, true); image.id = "canvasimage"; canvas.parentNode.replaceChild(image, canvas); var url = 'hidden.php', data = $('#canvasimage').attr('src'); $.ajax({ type: "POST", url: url, dataType: 'text', data: { …


20
วิธีการตรวจสอบว่าสตริงนั้นมีการเข้ารหัส Base64 หรือไม่
ฉันต้องการถอดรหัสสตริงที่เข้ารหัส Base64 แล้วเก็บไว้ในฐานข้อมูลของฉัน หากอินพุตไม่ได้เข้ารหัส Base64 ฉันต้องโยนข้อผิดพลาด ฉันจะตรวจสอบว่าสตริงนั้นเข้ารหัส Base64 ได้อย่างไร?
195 base64 

5
วิธีการแปลงสตริง Base64 เป็นอิมเมจบิตแมปเพื่อแสดงใน ImageView
ฉันมี Base64 String ที่แทนภาพ BitMap ฉันต้องแปลงสตริงนั้นให้เป็นรูปภาพ BitMap อีกครั้งเพื่อใช้กับ ImageView ในแอพ Android ของฉัน ทำอย่างไร? นี่คือรหัสที่ฉันใช้ในการแปลงภาพเป็น base64 String: //proceso de transformar la imagen BitMap en un String: //android:src="c:\logo.png" Resources r = this.getResources(); Bitmap bm = BitmapFactory.decodeResource(r, R.drawable.logo); ByteArrayOutputStream baos = new ByteArrayOutputStream(); bm.compress(Bitmap.CompressFormat.PNG, 100, baos); //bm is the bitmap object byte[] b …

7
วิธีแปลงไฟล์เป็น base64 ใน JavaScript
ตอนนี้ฉันได้รับวัตถุไฟล์โดยบรรทัดนี้: file = document.querySelector('#files > input[type="file"]').files[0] ฉันต้องส่งไฟล์นี้ผ่าน json ใน base 64 ฉันควรทำอย่างไรเพื่อแปลงเป็น base64 string
186 javascript  base64 

5
Base64: อะไรคือการเพิ่มขึ้นของการใช้พื้นที่ที่แย่ที่สุด?
หากเซิร์ฟเวอร์ได้รับสตริง base64 และต้องการตรวจสอบความยาวของมันก่อนที่จะทำการแปลงสมมติว่ามันต้องการอนุญาตให้อาร์เรย์ไบต์สุดท้ายเป็น 16KB เสมอ อาร์เรย์ 16KB ไบต์นั้นมีขนาดใหญ่เพียงใดเมื่อแปลงเป็นสตริง Base64 (สมมติว่าหนึ่งไบต์ต่ออักขระ)
168 base64  expansion 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.