Implementasi asli DTLS 1.2 dalam bahasa pemrograman Go.
Tujuan jangka panjangnya adalah tinjauan keamanan profesional, dan mungkin penyertaan dalam stdlib.
Ini hanya akan menargetkan DTLS 1.2, dan cipher suite paling modern/umum. Kami akan sangat senang dengan kontribusi yang termasuk dalam 'Fitur yang Direncanakan' dan perbaikan bug apa pun!
Pustaka ini memerlukan setidaknya Go 1.13, dan Anda harus mengaktifkan modul Go.
Untuk Server DTLS 1.2 yang mendengarkan pada 127.0.0.1:4444
go run examples/listen/selfsign/main.go
Untuk Klien DTLS 1.2 yang terhubung ke 127.0.0.1:4444
go run examples/dial/selfsign/main.go
Pion DTLS dapat terhubung ke dirinya sendiri dan OpenSSL.
// Generate a certificate
openssl ecparam -out key.pem -name prime256v1 -genkey
openssl req -new -sha256 -key key.pem -out server.csr
openssl x509 -req -sha256 -days 365 -in server.csr -signkey key.pem -out cert.pem
// Use with examples/dial/selfsign/main.go
openssl s_server -dtls1_2 -cert cert.pem -key key.pem -accept 4444
// Use with examples/listen/selfsign/main.go
openssl s_client -dtls1_2 -connect 127.0.0.1:4444 -debug -cert cert.pem -key key.pem
Pion DTLS juga dilengkapi dengan contoh yang melakukan pertukaran kunci melalui PSK
go run examples/listen/psk/main.go
go run examples/dial/psk/main.go
// Use with examples/dial/psk/main.go
openssl s_server -dtls1_2 -accept 4444 -nocert -psk abc123 -cipher PSK-AES128-CCM8
// Use with examples/listen/psk/main.go
openssl s_client -dtls1_2 -connect 127.0.0.1:4444 -psk abc123 -cipher PSK-AES128-CCM8
Pion memiliki komunitas aktif di Slack.
Ikuti Twitter Pion untuk pembaruan proyek dan berita penting WebRTC.
Kami selalu mencari untuk mendukung proyek Anda . Silakan hubungi kami jika Anda memiliki sesuatu untuk dibangun! Jika Anda memerlukan dukungan komersial atau tidak ingin menggunakan metode publik, Anda dapat menghubungi kami di [email protected]
Kunjungi wiki yang berkontribusi untuk bergabung dengan kelompok orang-orang luar biasa yang mewujudkan proyek ini
Lisensi MIT - lihat LISENSI untuk teks lengkap