Sodium Compat adalah polyfill PHP murni untuk perpustakaan kriptografi Sodium (libsodium), ekstensi inti di PHP 7.2.0+ dan tersedia di PECL.
Jika Anda memasang ekstensi PHP, Sodium Compat akan secara oportunis dan transparan menggunakan ekstensi PHP alih-alih implementasi kami.
sodium_compat v1.21.0 adalah rilis v1.x terakhir dari cabang master. Mulai sekarang, semua rilis mendatang yang mendukung PHP 5.2 - 8.0 dan bilangan bulat 32-bit akan berada di cabang v1.x
Versi sodium_compat yang lebih baru (yaitu, v2.0.0) akan terus ada di cabang master, kecuali diperlukan versi utama yang baru. Tujuan dari pekerjaan ini adalah untuk meningkatkan keterbacaan dan kinerja kode, sekaligus mengurangi kode boilerplate.
Jika ragu, lihat file README di cabang master untuk informasi versi terbaru.
versi sodium_compat | Versi PHP didukung | dukungan 32-bit? | Cabang |
---|---|---|---|
v1.xy | 5.2.4 - TERBARU | YA | v1.x |
v2.xy | 8.1 - TERBARU | TIDAK | menguasai |
Jika Anda memerlukan dukungan PHP 32-bit ( PHP_INT_SIZE == 4
), lanjutkan menggunakan sodium_compat v1.x. Jika Anda ingin peningkatan kinerja dan ketergantungan yang lebih kecil, gunakan v2.x.
Kami merekomendasikan perpustakaan dan kerangka kerja untuk menetapkan batasan versi Komposer sebagai berikut:
{
"require" : {
/* ... */
"paragonie/sodium_compat" : ">= 1"
/* ... */
}
}
Sebaliknya, aplikasi harus menentukan versi sebenarnya yang penting bagi mereka dan penerapannya.
Perpustakaan kriptografi ini belum diaudit secara formal oleh pihak ketiga independen yang berspesialisasi dalam kriptografi atau kriptanalisis.
Jika Anda memerlukan audit semacam itu sebelum dapat menggunakan sodium_compat dalam proyek Anda dan memiliki dana untuk audit semacam itu, silakan buka terbitan atau hubungi security at paragonie dot com
agar kami dapat membantu menyelesaikannya.
Namun, sodium_compat telah diadopsi oleh proyek sumber terbuka terkenal, seperti Joomla! dan Magento. Selanjutnya, sodium_compat dikembangkan oleh Paragon Initiative Enterprises, sebuah perusahaan yang berspesialisasi dalam pengembangan PHP aman dan kriptografi PHP, dan telah ditinjau secara informal oleh banyak pakar keamanan lain yang juga berspesialisasi dalam PHP.
Jika Anda ingin mempelajari lebih lanjut tentang langkah-langkah keamanan defensif yang kami ambil untuk mencegah sodium_compat menjadi sumber kerentanan di sistem Anda, silakan baca Pengembangan PHP yang Aman Secara Kriptografis .
Jika Anda menggunakan Komposer:
composer require paragonie/sodium_compat
Jika Anda tidak menggunakan Composer, unduh tarball rilis (yang harus ditandatangani dengan kunci publik GnuPG kami), ekstrak isinya, lalu sertakan skrip autoload.php
kami di proyek Anda.
<?php
require_once " /path/to/sodium_compat/autoload.php " ;
Sejak versi 1.3.0, rilis sodium_compat menyertakan Arsip PHP (file .phar) dan tanda tangan GPG terkait. Pertama, unduh kedua file dan verifikasi dengan kunci publik GPG kami, seperti: