﻿---
title: "Akumulator kriptografis"
description: "Panduan berfokus pada verifikasi tentang akumulator kriptografis, mencakup rancangan berbasis RSA dan hash, saksi keanggotaan dan nonkeanggotaan, pembaruan dinamis, penggunaan dalam blockchain, serta risiko operasional."
image: "https://wiki.fcontext.com/og.png"
---

> Documentation Index
> Fetch the complete documentation index at: https://wiki.fcontext.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Akumulator kriptografis

> Hanya untuk tujuan edukasi; bukan nasihat investasi maupun saran implementasi kriptografi. Bukti akumulator mengautentikasi suatu klaim terhadap satu komitmen, bukan data yang mendasarinya, status konsensus, atau ketersediaan data.

<a id="answer"></a>

## Jawaban langsung

Akumulator kriptografis mengikat suatu himpunan ke sebuah nilai ringkas dan memungkinkan pemverifikasi memeriksa saksi ringkas yang membuktikan bahwa suatu elemen berada dalam himpunan yang terikat pada komitmen tersebut. Sebagian skema juga membuktikan nonkeanggotaan. Pemverifikasi memerlukan nilai akumulator, elemen, saksi, dan parameter publik skema tersebut, tetapi tidak memerlukan setiap elemen lain dalam himpunan.

Akumulator bersifat **statis** jika harus dibangun ulang setelah himpunan berubah, **dinamis** jika penambahan atau penghapusan memungkinkan akumulator dan saksinya diperbarui secara efisien, dan **universal** jika mendukung bukti keanggotaan sekaligus nonkeanggotaan. Label tersebut menjelaskan kemampuan yang terpisah; skema dinamis tidak otomatis bersifat universal.

Blockchain dapat membentuk komitmen atas transaksi, output yang belum dibelanjakan, akun, validator, atau catatan pencabutan. Komitmen yang lebih kecil dapat mengurangi status yang disimpan oleh sebagian peserta, tetapi sistem tetap harus mendistribusikan data yang mendasari dan saksi terkini, mengautentikasi pembaruan, menangani reorganisasi rantai, serta menetapkan siapa yang boleh mengubah himpunan.

<a id="mechanism"></a>

## Cara kerjanya

1. **Tentukan himpunan secara presisi.** Tetapkan pengodean elemen kanonis, penanganan duplikat, aturan pengurutan jika relevan, pemisahan domain, dan versi komitmen yang tepat. Bukti untuk satu pengodean atau akar status tidak menyatakan apa pun tentang pengodean atau akar status lain.
2. **Jalankan penyiapan skema.** Akumulator berbasis hash mungkin hanya menggunakan parameter hash publik. Akumulator RSA menggunakan grup berorde tak diketahui, yang umumnya diturunkan dari modulus RSA `N`; keamanan mensyaratkan agar pihak tanpa wewenang tidak dapat mengeksploitasi faktorisasi modulus tersebut. Skema lain dapat menggunakan pairing, grup kelas, kisi, atau parameter publik tambahan dengan asumsi kepercayaan yang berbeda.
3. **Petakan elemen ke dalam aljabar.** Dalam konstruksi RSA yang disederhanakan, setiap elemen `x_i` dipetakan secara deterministik ke representatif bilangan prima yang berbeda, `p_i`. Dengan basis `g`, akumulatornya adalah:

   `A = g^(p_1 * p_2 * ... * p_n) mod N`

4. **Buat saksi keanggotaan.** Untuk elemen yang direpresentasikan oleh `p_i`, keluarkan faktornya dari eksponen:

   `w_i = g^(product of p_j for all j != i) mod N`

5. **Verifikasi terhadap akumulator yang tepat.** Pemverifikasi memeriksa input kanonis dan mengevaluasi:

   `w_i^(p_i) mod N = A`

   Berdasarkan asumsi keamanan skema, menghasilkan persamaan ini untuk elemen di luar himpunan yang diakumulasikan seharusnya tidak layak dilakukan. Persamaan tersebut tidak membuktikan bahwa elemen itu sendiri benar atau telah mendapat otorisasi.
6. **Proses pembaruan dan nonkeanggotaan secara terpisah.** Skema dinamis menetapkan bagaimana penambahan dan penghapusan mengubah `A` serta bagaimana saksi yang terdampak diperbarui. Skema universal menambahkan saksi nonkeanggotaan dan algoritme verifikasi tersendiri. Implementasi harus menolak saksi usang dan pembaruan yang terikat pada status lain.
7. **Bandingkan struktur berbasis hash berdasarkan biaya aktualnya.** Pohon Merkle adalah akumulator berbasis hash dalam arti luas: akarnya ringkas, sedangkan bukti keanggotaan memuat hash saudara sepanjang sebuah jalur sehingga ukurannya bertambah secara logaritmik terhadap jumlah daun. Skema bergaya RSA dapat menawarkan saksi individual berukuran konstan, tetapi pembuatan bukti, pemeliharaan saksi, penyiapan, dan komputasi memiliki biaya yang berbeda.

<a id="example"></a>

## Contoh perhitungan

- **Ukuran bukti Merkle.** Pohon Merkle biner seimbang dengan `1,048,576 = 2^20` daun membutuhkan `20` hash saudara untuk satu jalur inklusi. Dengan hash 32 byte, ukurannya adalah `20 * 32 = 640 bytes` sebelum memperhitungkan data daun, bit posisi, dan overhead serialisasi. Akarnya tetap berukuran 32 byte.
- **Ukuran konstan bukan berarti kerja konstan.** Dalam konstruksi RSA yang disederhanakan, `A` dan satu `w_i` masing-masing tetap berupa satu elemen grup seiring bertambahnya himpunan. Eksponen hasil kali, pembuatan representatif bilangan prima, pembaruan batch, dan distribusi saksi yang telah diperbarui masih dapat memerlukan komputasi atau data tambahan dalam jumlah besar.
- **Akumulator UTXO mengubah siapa menyimpan apa.** Node dengan status ringkas dapat menyimpan akumulator untuk output yang belum dibelanjakan dan memvalidasi pembelanjaan hanya jika menerima output tersebut beserta bukti keanggotaan terkini. Peserta lain tetap menyimpan cukup banyak status untuk menghasilkan bukti itu, dan pembaruan harus menghapus output yang telah dibelanjakan serta menambahkan output yang baru dibuat.
- **Pencabutan memiliki batas yang sama.** Pemegang kredensial dapat membuktikan bahwa suatu pengenal masih berada dalam akumulator anggota aktif, atau menggunakan rancangan universal untuk membuktikan bahwa pengenal tersebut tidak ada dalam himpunan pencabutan. Bukti itu mengautentikasi himpunan dalam komitmen penerbit; bukti tersebut tidak membuktikan bahwa penerbit menerapkan kebijakan pencabutan yang adil atau benar.

<a id="risks"></a>

## Risiko

- Menggunakan pengodean elemen yang ambigu atau tidak kanonis sehingga item logis yang sama dapat dipetakan secara berbeda.
- Memetakan elemen ke representatif bilangan prima secara keliru atau tanpa pengendalian tabrakan yang diwajibkan skema.
- Memercayai modulus RSA yang faktorisasinya mungkin diketahui oleh pihak penyiap atau penyerang.
- Menganggap upacara penyiapan multipihak aman tanpa memverifikasi transkripnya, asumsi tentang peserta, dan pengikatan parameter.
- Mengizinkan administrator mengganti parameter publik atau versi akumulator tanpa aturan migrasi yang diautentikasi.
- Memverifikasi saksi terhadap nilai akumulator yang usang, belum final, atau dipilih penyerang.
- Menerapkan penambahan, penghapusan, atau pembaruan saksi dari blok, fork, epoch, atau versi himpunan yang salah.
- Menganggap bahwa saksi keanggotaan juga membuktikan validitas, kepemilikan, otorisasi, atau nilai ekonomi elemen.
- Menganggap bahwa komitmen ringkas membuat himpunan yang mendasarinya tersedia atau dapat dipulihkan.
- Kehilangan data atau layanan yang diperlukan untuk membuat saksi terkini sehingga status yang valid tidak dapat digunakan.
- Tidak mendukung nonkeanggotaan padahal aplikasi secara tersirat bergantung pada bukti ketidakadaan.
- Menganggap jalur Merkle, saksi RSA, pembukaan polinomial, dan bukti validitas sebagai objek yang dapat saling menggantikan.
- Mengabaikan biaya penghapusan, lalu lintas penyegaran saksi, latensi pembuatan bukti, atau input serangan penolakan layanan.
- Tidak mengikat bukti pada protokol, rantai, kontrak, akar status, domain, dan versi serialisasi.
- Mengandalkan satu implementasi yang belum diaudit atau aritmetika khusus tanpa vektor pengujian independen.
- Menganggap keamanan klasik RSA, pairing, atau logaritma diskret akan tetap aman terhadap komputer kuantum yang relevan secara kriptografis.

<a id="misconceptions"></a>

## Kesalahpahaman umum

- **Akumulator berisi salinan himpunan yang dimampatkan.** Akumulator adalah komitmen yang mengikat, bukan arsip yang dapat dibalikkan.
- **Setiap akumulator membuktikan ketidakadaan.** Nonkeanggotaan memerlukan skema yang dirancang dan diverifikasi untuk kemampuan tersebut.
- **Saksi berukuran konstan menghasilkan biaya total yang konstan.** Penyiapan, pembuatan bukti, pembaruan, penyimpanan, dan distribusi saksi tetap merupakan biaya yang terpisah.
- **Tanpa status berarti tidak ada yang menyimpan status.** Sebagian pelaku harus menyimpan atau merekonstruksi data yang cukup untuk membuat elemen, pembaruan, dan saksi.
- **Bukti yang valid membuat item dalam komitmen menjadi benar.** Bukti hanya menghubungkan item tersebut dengan satu komitmen yang diautentikasi berdasarkan asumsi tertentu.
- **Pohon Merkle dan akumulator RSA memiliki profil kepercayaan dan kinerja yang sama.** Keduanya memiliki tujuan yang sama, yaitu membuat komitmen atas himpunan, tetapi menggunakan asumsi, ukuran bukti, prosedur pembaruan, dan mode kegagalan yang berbeda.

<a id="related"></a>

## Topik terkait

- [ERC-721](/id/crypto/erc721/)
- [Pohon Merkle](/id/crypto/merkle-tree/)
- [Sidechain](/id/crypto/sidechain/)
- [Model UTXO](/id/crypto/utxo-model/)
- [Bukti validitas](/id/crypto/validity-proof/)

<a id="sources"></a>

## Sumber

- [Revisiting Cryptographic Accumulators, Additional Properties and Relations to Other Primitives](https://eprint.iacr.org/2015/087) - IACR Cryptology ePrint Archive (diakses: 2026-08-20)
- [Efficient Revocation of Anonymous Group Membership](https://eprint.iacr.org/2001/113) - IACR Cryptology ePrint Archive (diakses: 2026-08-20)
- [Batching Techniques for Accumulators with Applications to IOPs and Stateless Blockchains](https://eprint.iacr.org/2018/1188) - IACR Cryptology ePrint Archive (diakses: 2026-08-20)
- [Utreexo: A Dynamic Hash-Based Accumulator Optimized for the Bitcoin UTXO Set](https://eprint.iacr.org/2019/611) - IACR Cryptology ePrint Archive (diakses: 2026-08-20)

Source: https://wiki.fcontext.com/id/crypto/cryptographic-accumulator/index.mdx
