12 poin oleh GN⁺ 2024-08-01 | 1 komentar | Bagikan ke WhatsApp
  • Paket open-source Swift baru, swift-homomorphic-encryption, telah dirilis
  • Homomorphic Encryption (HE) adalah teknologi enkripsi yang memungkinkan komputasi pada data terenkripsi tanpa perlu mendekripsinya
  • Klien mengirim data terenkripsi ke server, dan server menghitungnya lalu mengembalikan hasilnya
  • Server tidak mendekripsi data asli maupun mengakses kunci dekripsi
  • Memberikan peluang baru untuk melindungi privasi dan keamanan data pengguna di layanan cloud

Kasus penggunaan Apple

  • Homomorphic Encryption digunakan pada Live Caller ID Lookup, fitur baru di iOS 18
  • Live Caller ID Lookup mengirim kueri terenkripsi ke server untuk menyediakan informasi tentang nomor telepon
  • Server tidak mengetahui nomor telepon spesifik dalam permintaan
  • Fitur ini dapat diuji melalui paket live-caller-id-lookup-example

Fitur utama

  • Mendukung Swift on Server, framework HTTP Hummingbird, dan lintas platform
  • Benchmarking yang mudah melalui library Benchmark
  • Primitive kriptografi tingkat rendah berperforma tinggi dari Swift Crypto

Private Information Retrieval (PIR)

  • Live Caller ID Lookup bergantung pada Private Information Retrieval (PIR)
  • Klien mengirim kata kunci ke server dan mengambil nilai yang terkait
  • Diimplementasikan agar server tidak mengetahui kata kunci tersebut
  • Menggunakan Homomorphic Encryption untuk menangani database skala besar secara efisien

Homomorphic Encryption

  • Homomorphic Encryption memungkinkan komputasi pada data terenkripsi tanpa dekripsi
  • Alur kerja umum:
    • Klien mengenkripsi data sensitif lalu mengirimkannya ke server
    • Server menjalankan komputasi pada ciphertext
    • Server mengirim ciphertext hasil kembali ke klien
    • Klien mendekripsi hasilnya
  • Mengimplementasikan skema HE Brakerski-Fan-Vercauteren (BFV)
  • BFV didasarkan pada masalah RLWE yang memiliki ketahanan terhadap kuantum

Contoh penggunaan Homomorphic Encryption

  • Berguna untuk berbagai aplikasi yang melindungi privasi
  • Contoh kode:
    import HomomorphicEncryption  
    
    // Bfv 체계에 대한 몇 가지 암호화 파라미터를 선택하는 것으로 시작  
    // *이 암호화 파라미터는 안전하지 않으며 테스트용으로만 적합*  
    let encryptParams = try EncryptionParameters(from: .insecure_n_8_logq_5x18_logt_5)  
    
    // 매개변수를 사용하여 HE 계산을 위한 사전 계산을 수행  
    let context = try Context(encryptionParameters: encryptParams)  
    
    // Coefficient 인코딩을 사용하여 N 값을 인코딩  
    let values: [UInt64] = [8, 5, 12, 12, 15, 0, 8, 5]  
    let plaintext: Bfv.CoeffPlaintext = try context.encode(values: values, format: .coefficient)  
    
    // 비밀 키를 생성하고 이를 사용하여 일반 텍스트를 암호화  
    let secretKey = try context.generateSecretKey()  
    let ciphertext = try plaintext.encrypt(using: secretKey)  
    
    // 일반 텍스트를 해독하면 원래 값을 얻을 수 있음  
    let decrypted = try ciphertext.decrypt(using: secretKey)  
    let decoded: [UInt64] = try decrypted.decode(format: .coefficient)  
    precondition(decoded == values)  
    

Ringkasan GN⁺

  • Homomorphic Encryption membuka kemungkinan baru bagi layanan cloud sambil tetap melindungi privasi data
  • Penerapannya pada fitur iOS 18 Apple membuktikan nilai praktisnya
  • Komunitas Swift dapat mengembangkan berbagai aplikasi pelindung privasi
  • Proyek lain dengan fungsi serupa antara lain Microsoft SEAL dan IBM HELib

1 komentar

 
GN⁺ 2024-08-01
Komentar Hacker News
  • Pencarian nomor telepon adalah contoh klasik di buku teks tentang kasus ketika enkripsi homomorfik tidak benar-benar bekerja dalam praktik
  • Enkripsi homomorfik menarik karena terasa seperti memindahkan simulasi ke alam semesta paralel yang tidak bisa diakses
  • Siapa pun yang tertarik dengan FHE sebaiknya melihat Zama.ai, yang belakangan ini membuat FHE yang praktis
  • Ini akan menjadi kasus penggunaan nyata pertama untuk HE. Biasanya dianggap terlalu lambat untuk berguna, tetapi ini adalah kasus penggunaan yang sangat bagus
  • Ini adalah pengumuman yang sangat penting dalam jangka panjang, meski dampaknya tidak akan langsung terasa
    • Ini merupakan pengumuman besar untuk kasus penggunaan terkait AI dan PII
  • Penasaran bagaimana perbandingannya dengan FHE milik Zama.ai
  • FHE memang keren, tetapi saya penasaran berapa banyak kasus penggunaan yang benar-benar cocok untuknya. Ini memberi jaminan keamanan yang lebih baik kepada pengguna, tetapi jika sebuah organisasi menjanjikan lingkungan eksekusi yang aman di cloud, apakah pengguna benar-benar peduli?
    • Selain itu, dari sudut pandang rekayasa, memakai FHE berarti harus me-refactor alur dan berkomitmen bahwa seluruh pemrosesan downstream bersifat tetap. Jika hukum tidak mewajibkannya, apakah organisasi akan punya motivasi yang cukup?
  • Namanya lucu, karena HME sama sekali tidak cepat dalam banyak aspek
    • Saya rasa solusi yang sebenarnya adalah secure enclave, tetapi itu juga punya kesulitannya sendiri
  • Hal yang selalu ingin saya ketahui tentang FHE: standar emas kriptografi modern adalah keamanan IND-CCA. Secara definisi, FHE tidak bisa memenuhi standar itu (mengubah ciphertext agar memberi efek yang dapat diprediksi pada plaintext adalah definisi dari chosen-ciphertext attack). Jadi seberapa dekat skema FHE modern? Dengan kata lain, seberapa banyak keamanan yang harus dikorbankan untuk mendapatkan manfaat FHE?
  • Saya tidak paham bagaimana server bisa mencocokkan ciphertext dengan suatu nilai tanpa mengetahui kuncinya. Bagaimana server menentukan bahwa ciphertext ini sesuai dengan nilai tertentu? Jika server membangun basis data ciphertext-nilai ini, bagaimana ia tahu algoritme apa yang harus digunakan untuk mengubah nilai menjadi ciphertext dan menyimpannya?