Bahasa Indonesia

Perangkat Data untuk Pengembang — pertanyaan

Bagaimana toolkit menangani data Anda, utilitas mana yang tepat, dan di mana masing-masing utilitas sengaja dihentikan.

Versi pendek

Setiap utilitas di sini berjalan di tab browser Anda. Tidak ada yang Anda tempel yang diunggah atau disimpan oleh server aplikasi ToolAcre. Analisis seluruh situs hanya berjalan pada host produksi kanonik yang dikonfigurasi dan diungkapkan dalam Kebijakan Privasi; nilai yang ditempelkan dikecualikan dari peristiwa analisis ToolAcre sendiri.

Pertanyaan di bawah ini adalah pertanyaan yang menentukan apakah Anda dapat mempercayai hasil tertentu. Jika suatu utilitas tepat, maka dikatakan demikian; jika ia mendekati atau menolak, ia juga mengatakan demikian.

Apa yang terjadi pada apa yang Anda tempel

  • Setiap konversi, hash, decode dan diff berjalan di tab browser Anda. Tidak ada masukan yang diunggah, dicatat atau disimpan di server, karena tidak ada server yang terlibat setelah halaman dimuat.
  • Hash berasal dari implementasi Web Crypto milik browser, dan UUID dari generator acak yang aman secara kriptografis. Tidak ada yang melibatkan panggilan jaringan.
  • Tidak ada yang Anda ketikkan yang ditulis ke penyimpanan lokal atau cookie. Memuat ulang halaman akan membuangnya; menutup tab akan membuangnya.
  • Analisis seluruh situs hanya berjalan pada host produksi kanonik yang dikonfigurasi dan diungkapkan dalam Kebijakan Privasi; host lokal dan pratinjau menolaknya. Nilai, token, URL, dan konten file yang ditempelkan dikecualikan dari peristiwa analisis ToolAcre sendiri. Periklanan dinonaktifkan dalam konfigurasi saat ini.
  • Artinya: kunci JWT atau API adalah kredensial aktif. Kebiasaan yang aman adalah jangan pernah menempelkannya ke halaman web yang tidak Anda tulis, betapapun dapat dipercayanya klaim tersebut — termasuk yang ini.

Pertanyaan

Apakah sesuatu yang saya tempel sudah diunggah?

Tidak ada unggahan ToolAcre yang menerimanya. Setiap konversi, hash, dekode, dan perbedaan terjadi di browser Anda. Analisis seluruh situs terbatas pada host produksi kanonik yang dikonfigurasi dan diungkapkan dalam Kebijakan Privasi; nilai, token, URL, dan konten file yang ditempelkan dikecualikan dari peristiwa analisis ToolAcre sendiri.

Apakah ada yang disimpan di antara kunjungan?

Tidak. Toolkit ini tidak menulis apa pun ke localStorage, sessionStorage, IndexedDB, atau cookie. Memuat ulang halaman akan menghapus semua yang Anda masukkan; menutup tab juga melakukan hal yang sama. Tidak ada sistem akun, jadi tidak ada yang perlu didaftarkan dan tidak ada yang perlu dihapus.

Apakah base64 di sini menangani emoji dan teks non-Inggris?

Iya benar sekali. Teks dikonversi ke UTF-8 byte sebelum dikodekan dan didekodekan kembali dengan decoder yang ketat, jadi emoji, CJK, Arab, menggabungkan tanda dan ZWJ mengurutkan semua bolak-balik byte demi byte. Ini adalah hal spesifik yang salah pada btoa() bawaan browser — ia menampilkan beberapa karakter dan secara diam-diam menghasilkan byte yang salah untuk karakter lainnya.

Bagaimana cara validator JSON menemukan posisi kesalahan?

Dengan pemindai sendiri, bukan dengan membaca pesan kesalahan mesin. Teks kesalahan browser JSON khusus untuk mesin dan V8 saat ini menghilangkan posisinya sepenuhnya karena beberapa kegagalan. Pemindai menelusuri dokumen dan melaporkan offset pertama yang tidak valid JSON, dengan alasan yang ditulis untuk manusia — koma di akhir, string yang diberi tanda kutip tunggal, string yang tidak diakhiri — ditambah baris yang menyinggung dan tanda sisipan.

Fitur YAML manakah yang didukung?

Struktur standar YAML 1.2, dibaca dengan skema terbatas yang hanya dapat menghasilkan data berbentuk JSON: string, angka, boolean, null, urutan, dan pemetaan. Tag yang membuat objek arbitrer ditolak. Anda dapat memilih antara skema JSON (paling ketat) dan skema Inti (yang juga menyelesaikan ~ dan nilai kosong menjadi null, bilangan bulat hex, dan .inf / .nan).

Mengapa file YAML saya gagal dengan "tag tidak dikenal"?

Karena menggunakan tag khusus atau bahasa tertentu seperti !!js/function, !!python/object/apply, !!binary atau !!timestamp. Loader yang dikonfigurasi untuk membangunnya adalah konstruktor objek arbitrer, yang dalam beberapa bahasa merupakan kelas bug eksekusi kode jarak jauh. Alat ini menolaknya karena desainnya daripada membuat pengecualian.

Apakah hashnya benar?

Mereka dihitung oleh implementasi Web Crypto milik browser, dan jaringan pengujian memeriksanya terhadap vektor yang dipublikasikan — SHA-256 dari "abc" adalah ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad, dan vektor SHA-1, SHA-384 dan SHA-512 diperiksa di sampingnya, bersama dengan intisari string kosong.

Mengapa SHA-1 ditandai rusak?

Karena memang demikian. Tabrakan praktis dipublikasikan di 2017 (SHAttered), dan tabrakan awalan yang dipilih — varian yang merusak tanda tangan dan sertifikat — menjadi terjangkau di 2020. Ini disertakan sehingga Anda dapat mereproduksi nilai SHA-1 yang ada seperti id objek git dan tanda tangan API lama, yang berbeda dengan mengandalkannya.

UUID itu dari mana?

Dari crypto.randomUUID(), atau crypto.getRandomValues() di mana randomUUID tidak tersedia. Keduanya adalah generator browser yang aman secara kriptografis. Math.random() tidak pernah digunakan: keadaan internalnya dapat dipulihkan dari keluaran jangka pendek, sehingga apa pun yang dibangun darinya dapat diprediksi. Jika tidak ada sumber yang aman, alat tersebut akan menolak untuk membuat dan bukannya menurunkan versi secara diam-diam.

Apakah decoder JWT memverifikasi tanda tangan?

Tidak. Ini menerjemahkan header dan payload dan menunjukkan kepada Anda apa yang mereka klaim. Itu tidak memeriksa tanda tangannya, jadi tidak ada yang menunjukkan bukti bahwa token itu asli, tidak diubah atau dikeluarkan oleh siapa pun yang namanya. Verifikasi memerlukan kunci penerbit dan algoritme yang disematkan, yang merupakan milik sistem yang memercayai token — bukan milik halaman web.

Bisakah saya menempelkan token akses sebenarnya?

Anda bisa, dan Anda tidak boleh melakukannya — di sini atau di mana pun. Token langsung adalah kredensial: siapa pun yang memegangnya dapat bertindak sebagai Anda hingga masa berlakunya habis. Halaman ini menerjemahkan kode secara lokal dan tidak mengirimkan apa pun, tetapi itu adalah klaim yang tidak dapat Anda verifikasi secara sekilas di situs mana pun, sehingga kebiasaan aman telah kedaluwarsa atau menguji token. Jika Anda sudah menempelkannya di suatu tempat, putar.

Bagaimana cara kerja perbedaan teks?

Ini menghitung skrip edit urutan umum terpanjang, yang memberikan serangkaian penambahan dan penghapusan minimal daripada perbandingan baris demi baris yang naif. Garis depan dan belakang yang identik dipangkas terlebih dahulu, sehingga membandingkan dua file besar yang berbeda di satu tempat akan dilakukan dengan cepat.

Mengapa diff menolak masukan yang sangat besar?

Algoritme LCS membutuhkan waktu dan memori yang sebanding dengan hasil kali kedua panjangnya. Melewati beberapa ribu baris berbeda yang menjadi alokasi yang tidak boleh dicoba oleh tab browser, sehingga alat tersebut menolak sepenuhnya dan menyarankan untuk membandingkan wilayah yang lebih kecil. File yang berbagi sebagian besar kontennya akan dipangkas terlebih dahulu dan tetap cepat terlepas dari ukuran totalnya.

Apakah deteksi unit stempel waktu dapat diandalkan?

Ini adalah heuristik yang terdokumentasi, dan tidak pernah diam. Apa pun yang berada pada atau di atas 10^11 dianggap sebagai milidetik, karena 10^11 detik adalah tahun 5138 sedangkan 10^11 milidetik adalah 1973. Unit yang sebenarnya digunakan selalu ditampilkan bersama hasilnya, dan Anda dapat menggantinya.

Apakah perangkat ini berfungsi secara offline?

Setelah halaman dimuat, ya — tidak ada yang memerlukan jaringan. Tidak ada pekerja layanan, sehingga pemuatan awal masih memerlukan koneksi.

Apakah ini berfungsi di telepon?

Ya. Tata letak berfungsi dari 320 CSS piksel ke atas, teks formulir adalah 16px sehingga Safari seluler tidak memperbesar fokus, dan kontrol memenuhi minimum target sentuh 44-piksel. Editor dan keluaran menggulir ke dalam kotaknya masing-masing, sehingga garis panjang JSON yang diperkecil tidak akan memperluas halaman.

Apakah pembersih editor HTML aman digunakan pada masukan yang tidak tepercaya?

Tidak, dan panel mengatakan demikian. Ini adalah daftar yang diizinkan untuk keluaran editor sendiri: elemen dan atribut di luar daftar tetap akan dihapus, pengendali peristiwa tidak dapat bertahan karena tidak ada atribut yang bertahan kecuali atribut tersebut dicantumkan, dan hanya http, https, mailto, tel, ftp, dan tautan relatif yang disimpan. Itu membuat apa yang dikeluarkan editor ini aman untuk ditempelkan ke halaman yang Anda kendalikan. Ini bukan filter XSS untuk tujuan umum — ini adalah tokeniser string, bukan parser HTML5, sehingga muatan yang tidak bersahabat pada prinsipnya dapat diurai secara berbeda oleh browser. Pratinjaunya adalah iframe sandbox tanpa skrip yang diizinkan, jadi tidak ada yang bisa dijalankan di sana.

Mengapa kalkulator chmod terkadang menampilkan S dan T dalam huruf kapital?

Karena bit khusus disetel dan bit eksekusi yang cocok tidak. 4755 adalah rwsr-xr-x, program setuid yang dapat dijalankan; 4644 adalah rwSr--r--, file setuid yang tidak dapat dieksekusi oleh siapa pun, yang hampir selalu merupakan kesalahan. Huruf kapital adalah sistem yang memberi tahu Anda bahwa bit tidak perlu ditindaklanjuti, dan kalkulator yang menunjukkan huruf kecil akan menyembunyikan satu hal yang perlu Anda lihat.

Apakah docker converter pernah menjalankan perintah yang saya tempel?

Tidak. Ini membagi string dengan tokeniser yang peka terhadap kutipan dan membaca potongannya. Tidak ada eval, tidak ada shell, dan tidak ada proses anak di mana pun dalam basis kode. Tanda tik mundur, $(...) dan titik koma tetap menjadi karakter literal. Bendera apa pun yang tidak dapat dikonversi diberi nama dalam peringatan yang terlihat, bukan dihilangkan, karena file penulisan yang secara diam-diam melakukan kurang dari perintah asalnya adalah hal terburuk yang dapat dihasilkan alat ini.

Mengapa waktu pratinjau cron tidak cocok dengan server saya?

Biasanya zona waktu: cron menggunakan zona mesin yang dijalankannya, dan pratinjau menggunakan zona yang Anda pilih, jadi setel ke zona server Anda. Kemungkinan penyebab lainnya adalah aturan hari — ketika hari dalam bulan dan hari dalam seminggu ditetapkan, cron berjalan ketika EITHER cocok, yang dipicu lebih sering daripada perkiraan kebanyakan orang. Generator memperingatkan kapan hal itu berlaku.

Apakah ada iklan atau analitik?

Periklanan dinonaktifkan dalam konfigurasi saat ini. Analisis seluruh situs hanya berjalan pada host produksi kanonik yang dikonfigurasi dan diungkapkan dalam Kebijakan Privasi; nilai, token, URL, dan konten file yang ditempelkan dikecualikan dari peristiwa analisis ToolAcre sendiri.

Keterbatasan

  • Semuanya berjalan dalam satu tab browser, sehingga setiap utilitas dibatasi oleh memori perangkat Anda. Masing-masing memiliki batasan masukan yang jelas dan menolak pekerjaan berukuran besar daripada membekukannya.
  • Pembuatan hashing dan UUID memerlukan konteks yang aman (https:// atau localhost), karena di situlah browser mengekspos Web Crypto.
  • Dekoder JWT tidak pernah memverifikasi tanda tangan, dan token JWE terenkripsi tidak dapat didekodekan sama sekali.
  • YAML dibaca dengan skema hanya data; dokumen yang mengandalkan tag khusus ditolak karena desain.
  • Tabel entitas HTML mencakup subset praktis daripada semua referensi bernama 2,231 HTML5, dan nama yang tidak diketahui dilaporkan daripada ditebak.
  • Perbedaannya membandingkan seluruh baris. Tidak ada penyorotan tingkat kata atau tingkat karakter dalam baris yang diubah.
  • Pembersih editor HTML adalah daftar yang diizinkan untuk keluarannya sendiri, bukan filter XSS tujuan umum untuk masukan yang tidak tepercaya, dan tidak memiliki gambar, tabel, atau gaya.
  • Konverter docker menangani satu perintah docker run pada satu waktu dan memberi nama pada setiap flag yang tidak dapat diwakilinya alih-alih menghapusnya.
  • Generator cron hanya membaca sintaks crontab lima bidang, dan waktu pengoperasian berikutnya adalah pratinjau berdasarkan data zona waktu browser dan bukan jaminan tentang server Anda.