EnglishFrenchSpanyol

Ad


Favicon OnWorks

cksumposix - Dalam talian di Awan

Jalankan cksumposix dalam penyedia pengehosan percuma OnWorks melalui Ubuntu Online, Fedora Online, emulator dalam talian Windows atau emulator dalam talian MAC OS

Ini ialah arahan cksumposix yang boleh dijalankan dalam penyedia pengehosan percuma OnWorks menggunakan salah satu daripada berbilang stesen kerja dalam talian percuma kami seperti Ubuntu Online, Fedora Online, emulator dalam talian Windows atau emulator dalam talian MAC OS.

JADUAL:

NAMA


cksum - tulis jumlah semak dan saiz fail

SINOPSIS


cksum [fail...]

DESCRIPTION


. cksum utiliti hendaklah mengira dan menulis kepada keluaran standard cek redundansi kitaran
(CRC) untuk setiap fail input, dan juga tulis kepada output standard bilangan oktet dalam setiap satu
fail. CRC yang digunakan adalah berdasarkan polinomial yang digunakan untuk semakan ralat CRC dalam
Piawaian ISO/IEC 8802–3:1996 (Ethernet).

Pengekodan untuk checksum CRC ditakrifkan oleh polinomial penjanaan:

G(x)=x32 +x26 +x23 +x22 +x16 +x12 +x11 +x10 +x8+x7+x5+x4+x2+x+1

Secara matematik, nilai CRC yang sepadan dengan fail tertentu hendaklah ditakrifkan oleh
prosedur berikut:

1. The n bit yang akan dinilai dianggap sebagai pekali bagi polinomial mod 2
M(x) daripada ijazah n−1. Ini n bit ialah bit daripada fail, dengan paling banyak
bit signifikan ialah bit paling ketara bagi oktet pertama fail dan
bit terakhir ialah bit paling tidak ketara bagi oktet terakhir, berlapik dengan bit sifar (jika
perlu) untuk mencapai bilangan integral oktet, diikuti oleh satu atau lebih oktet
mewakili panjang fail sebagai nilai binari, oktet paling tidak ketara dahulu.
Bilangan oktet terkecil yang mampu mewakili integer ini hendaklah digunakan.

2. M(x) didarab dengan x32 (iaitu, beralih ke kiri 32 bit) dan dibahagikan dengan G(x) menggunakan
bahagian mod 2, menghasilkan baki R(x) darjah ≤ 31.

3. Pekali bagi R(x) dianggap sebagai urutan 32-bit.

4. Urutan bit dilengkapkan dan hasilnya ialah CRC.

PILIHAN


Tiada.

OPERAND


Operan berikut hendaklah disokong:

fail Nama laluan bagi fail yang akan disemak. Jika tidak fail operan ditentukan, iaitu
input standard hendaklah digunakan.

STDIN


Input piawai hendaklah digunakan jika tidak fail operan ditentukan, dan hendaklah digunakan jika a
fail operan ialah '−' dan pelaksanaan memperlakukan '−' sebagai makna input standard.
Jika tidak, input standard tidak boleh digunakan. Lihat bahagian INPUT FAIL.

INPUT FILES


Fail input boleh menjadi sebarang jenis fail.

PERSEKITARAN PELBAGAI


Pembolehubah persekitaran berikut akan mempengaruhi pelaksanaan cksum:

BAHASA Sediakan nilai lalai untuk pembolehubah pengantarabangsaan yang tidak ditetapkan atau
null. (Lihat volum Takrif Asas POSIX.1‐2008, seksyen 8.2,
Pengantarabangsaan Pembolehubah untuk keutamaan pengantarabangsaan
pembolehubah yang digunakan untuk menentukan nilai kategori tempat.)

LC_ALL Jika ditetapkan kepada nilai rentetan bukan kosong, ganti nilai semua yang lain
pembolehubah pengantarabangsaan.

LC_CTYPE Tentukan tempat untuk tafsiran jujukan bait data teks
sebagai aksara (contohnya, bait tunggal berbanding dengan aksara berbilang bait dalam
hujah).

LC_MESSAGES
Tentukan tempat yang harus digunakan untuk mempengaruhi format dan kandungan
mesej diagnostik yang ditulis kepada ralat standard.

NLSPATH Tentukan lokasi katalog mesej untuk pemprosesan LC_MESSAGES.

ASYNCRONOUS ACARA


Lalai.

STDOUT


Bagi setiap fail yang berjaya diproses, fail cksum utiliti hendaklah menulis seperti berikut
format:

"%u %d %s\n", <checksum>,# of oktet>,nama jalan>

Jika tidak fail operan telah ditentukan, nama laluan dan petunjuknya hendaklah ditinggalkan.

STDERR


Ralat standard hendaklah digunakan hanya untuk mesej diagnostik.

OUTPUT FILES


Tiada.

EXTENDED DESCRIPTION


Tiada.

EXIT STATUS


Nilai keluar berikut hendaklah dikembalikan:

0 Semua fail telah berjaya diproses.

>0 Ralat telah berlaku.

AKIBAT OF KESALAHAN


Lalai.

. berikutan bahagian adalah bermaklumat.

PERMOHONAN PENGGUNAAN


. cksum utiliti biasanya digunakan untuk membandingkan fail suspek dengan cepat dengan fail yang dipercayai
versi yang sama, seperti memastikan fail yang dihantar melalui media bising tiba
utuh. Walau bagaimanapun, perbandingan ini tidak boleh dianggap selamat dari segi kriptografi. The
kemungkinan fail yang rosak menghasilkan CRC yang sama seperti yang asal adalah kecil; sengaja
penipuan adalah sukar, tetapi mungkin tidak mustahil.

Walaupun input fail ke cksum boleh menjadi apa-apa jenis, hasilnya tidak semestinya seperti yang akan berlaku
dijangka pada fail peranti khas aksara atau pada jenis fail yang tidak diterangkan oleh Sistem
Isipadu antara muka POSIX.1‐2008. Oleh kerana volum POSIX.1‐2008 ini tidak menyatakan
saiz blok yang digunakan semasa melakukan input, jumlah semak fail khas aksara tidak perlu diproses
semua data dalam fail tersebut.

Algoritma dinyatakan dari segi aliran bit yang dibahagikan kepada oktet. Jika fail adalah
dihantar antara dua sistem dan mengalami sebarang transformasi data (seperti menukar
pesanan bait little-endian kepada big-endian), nilai CRC yang sama tidak boleh dijangka.
Pelaksanaan yang melakukan transformasi sedemikian mungkin berlanjutan cksum untuk mengendalikan sedemikian
keadaan.

CONTOH


Tiada.

RATIONALE


Program bahasa C berikut boleh digunakan sebagai model untuk menerangkan algoritma. Ia
menganggap bahawa a tangki ialah satu oktet. Ia juga menganggap bahawa keseluruhan fail tersedia untuk
satu melalui fungsi. Ini dilakukan untuk kesederhanaan dalam menunjukkan
algoritma, bukannya sebagai model pelaksanaan.

statik tidak ditandatangani lama crctab[] = {
0x00000000,
0x04c11db7, 0x09823b6e, 0x0d4326d9, 0x130476dc, 0x17c56b6b,
0x1a864db2, 0x1e475005, 0x2608edb8, 0x22c9f00f, 0x2f8ad6d6,
0x2b4bcb61, 0x350c9b64, 0x31cd86d3, 0x3c8ea00a, 0x384fbdbd,
0x4c11db70, 0x48d0c6c7, 0x4593e01e, 0x4152fda9, 0x5f15adac,
0x5bd4b01b, 0x569796c2, 0x52568b75, 0x6a1936c8, 0x6ed82b7f,
0x639b0da6, 0x675a1011, 0x791d4014, 0x7ddc5da3, 0x709f7b7a,
0x745e66cd, 0x9823b6e0, 0x9ce2ab57, 0x91a18d8e, 0x95609039,
0x8b27c03c, 0x8fe6dd8b, 0x82a5fb52, 0x8664e6e5, 0xbe2b5b58,
0xbaea46ef, 0xb7a96036, 0xb3687d81, 0xad2f2d84, 0xa9ee3033,
0xa4ad16ea, 0xa06c0b5d, 0xd4326d90, 0xd0f37027, 0xddb056fe,
0xd9714b49, 0xc7361b4c, 0xc3f706fb, 0xceb42022, 0xca753d95,
0xf23a8028, 0xf6fb9d9f, 0xfbb8bb46, 0xff79a6f1, 0xe13ef6f4,
0xe5ffeb43, 0xe8bccd9a, 0xec7dd02d, 0x34867077, 0x30476dc0,
0x3d044b19, 0x39c556ae, 0x278206ab, 0x23431b1c, 0x2e003dc5,
0x2ac12072, 0x128e9dcf, 0x164f8078, 0x1b0ca6a1, 0x1fcdbb16,
0x018aeb13, 0x054bf6a4, 0x0808d07d, 0x0cc9cdca, 0x7897ab07,
0x7c56b6b0, 0x71159069, 0x75d48dde, 0x6b93dddb, 0x6f52c06c,
0x6211e6b5, 0x66d0fb02, 0x5e9f46bf, 0x5a5e5b08, 0x571d7dd1,
0x53dc6066, 0x4d9b3063, 0x495a2dd4, 0x44190b0d, 0x40d816ba,
0xaca5c697, 0xa864db20, 0xa527fdf9, 0xa1e6e04e, 0xbfa1b04b,
0xbb60adfc, 0xb6238b25, 0xb2e29692, 0x8aad2b2f, 0x8e6c3698,
0x832f1041, 0x87ee0df6, 0x99a95df3, 0x9d684044, 0x902b669d,
0x94ea7b2a, 0xe0b41de7, 0xe4750050, 0xe9362689, 0xedf73b3e,
0xf3b06b3b, 0xf771768c, 0xfa325055, 0xfef34de2, 0xc6bcf05f,
0xc27dede8, 0xcf3ecb31, 0xcbffd686, 0xd5b88683, 0xd1799b34,
0xdc3abded, 0xd8fba05a, 0x690ce0ee, 0x6dcdfd59, 0x608edb80,
0x644fc637, 0x7a089632, 0x7ec98b85, 0x738aad5c, 0x774bb0eb,
0x4f040d56, 0x4bc510e1, 0x46863638, 0x42472b8f, 0x5c007b8a,
0x58c1663d, 0x558240e4, 0x51435d53, 0x251d3b9e, 0x21dc2629,
0x2c9f00f0, 0x285e1d47, 0x36194d42, 0x32d850f5, 0x3f9b762c,
0x3b5a6b9b, 0x0315d626, 0x07d4cb91, 0x0a97ed48, 0x0e56f0ff,
0x1011a0fa, 0x14d0bd4d, 0x19939b94, 0x1d528623, 0xf12f560e,
0xf5ee4bb9, 0xf8ad6d60, 0xfc6c70d7, 0xe22b20d2, 0xe6ea3d65,
0xeba91bbc, 0xef68060b, 0xd727bbb6, 0xd3e6a601, 0xdea580d8,
0xda649d6f, 0xc423cd6a, 0xc0e2d0dd, 0xcda1f604, 0xc960ebb3,
0xbd3e8d7e, 0xb9ff90c9, 0xb4bcb610, 0xb07daba7, 0xae3afba2,
0xaafbe615, 0xa7b8c0cc, 0xa379dd7b, 0x9b3660c6, 0x9ff77d71,
0x92b45ba8, 0x9675461f, 0x8832161a, 0x8cf30bad, 0x81b02d74,
0x857130c3, 0x5d8a9099, 0x594b8d2e, 0x5408abf7, 0x50c9b640,
0x4e8ee645, 0x4a4ffbf2, 0x470cdd2b, 0x43cdc09c, 0x7b827d21,
0x7f436096, 0x7200464f, 0x76c15bf8, 0x68860bfd, 0x6c47164a,
0x61043093, 0x65c52d24, 0x119b4be9, 0x155a565e, 0x18197087,
0x1cd86d30, 0x029f3d35, 0x065e2082, 0x0b1d065b, 0x0fdc1bec,
0x3793a651, 0x3352bbe6, 0x3e119d3f, 0x3ad08088, 0x2497d08d,
0x2056cd3a, 0x2d15ebe3, 0x29d4f654, 0xc5a92679, 0xc1683bce,
0xcc2b1d17, 0xc8ea00a0, 0xd6ad50a5, 0xd26c4d12, 0xdf2f6bcb,
0xdbee767c, 0xe3a1cbc1, 0xe760d676, 0xea23f0af, 0xeee2ed18,
0xf0a5bd1d, 0xf464a0aa, 0xf9278673, 0xfde69bc4, 0x89b8fd09,
0x8d79e0be, 0x803ac667, 0x84fbdbd0, 0x9abc8bd5, 0x9e7d9662,
0x933eb0bb, 0x97ffad0c, 0xafb010b1, 0xab710d06, 0xa6322bdf,
0xa2f33668, 0xbcb4666d, 0xb8757bda, 0xb5365d03, 0xb1f740b4
};

memcrc panjang tidak ditandatangani(const unsigned char *b, size_t n)
{
/* Input argumen:
* const unsigned char* b == jujukan bait kepada checksum
* size_t n == panjang jujukan
*/

daftar saiz_t i;
daftar c yang tidak ditandatangani, s = 0;

untuk (i = n; i > 0; −−i) {
c = *b++;
s = (s << 8) ^ crctab[(s >> 24) ^ c];
}

/* Panjangkan dengan panjang rentetan. */
manakala (n != 0) {
c = n & 0377;
n >>= 8;
s = (s << 8) ^ crctab[(s >> 24) ^ c];
}

kembali ~s;
}

Amalan sejarah menulis bilangan ``blok'' telah ditukar kepada menulis
bilangan oktet, kerana yang terakhir bukan sahaja lebih berguna, tetapi juga sejak sejarah
pelaksanaan tidak konsisten dalam mentakrifkan maksud ``blok''.

Algoritma yang digunakan telah dipilih untuk meningkatkan keteguhan operasi cksum. Tidak
Sistem V mahupun BSD jumlah algoritma telah dipilih. Oleh kerana setiap daripada ini berbeza dan
masing-masing adalah tingkah laku lalai pada sistem tersebut, tiada kompromi realistik tersedia jika
sama ada telah dipilih—beberapa set aplikasi sejarah akan rosak. Oleh itu, nama
diubah menjadi cksum. Walaupun sejarah jumlah arahan mungkin akan berterusan
disediakan selama bertahun-tahun, program yang direka untuk mudah alih merentas sistem harus menggunakan
nama baru.

Algoritma yang dipilih adalah berdasarkan yang digunakan oleh standard ISO/IEC 8802‐3:1996
(Ethernet) untuk medan jujukan semakan bingkai. Algoritma yang digunakan tidak sepadan dengan
definisi teknikal a checksum; istilah itu digunakan atas sebab sejarah. Panjangnya
fail disertakan dalam pengiraan CRC kerana ini selari dengan kemasukan panjang
medan oleh Ethernet dalam CRCnya, tetapi juga kerana ia melindungi daripada perlanggaran yang tidak disengajakan
antara fail yang bermula dengan siri sifar oktet yang berbeza. Peluang yang dua
fail yang berbeza menghasilkan CRC yang sama adalah lebih besar apabila panjangnya tidak
dipertimbangkan. Mengekalkan panjang dan jumlah semak fail itu sendiri berasingan akan menghasilkan a
algoritma yang sedikit lebih mantap, tetapi penggunaan sejarah selalu menjadi satu nombor
(checksum seperti yang dicetak) mewakili tandatangan fail. Ia telah memutuskan bahawa
penggunaan sejarah adalah pertimbangan yang lebih penting.

Cadangan awal mengandungi pengubahsuaian pada algoritma Ethernet yang melibatkan pengekstrakan
nilai jadual apabila hasil perantaraan menjadi sifar. Ini telah ditunjukkan sebagai kurang
teguh daripada kaedah semasa dan secara matematik sukar untuk diterangkan atau dijustifikasikan.

Pengiraan yang digunakan adalah sama dengan yang diberikan dalam pseudo-kod dalam Sarwate yang dirujuk
artikel. Penyampaian kod pseudo ialah:

X <− 0; Y <− 0;
Untuk i <− m -1 langkah -1 sehingga 0 do
memulakan
T <− X(1) ^ A[i];
X(1) <− X(0); X(0) <− Y(1); Y(1) <− Y(0); Y(0) <− 0;
komen: f[T] and f'[T] menandakan yang T-th perkataan in yang
meja f and f' ;
X <− X ^ f[T]; Y <− Y ^ f'[T];
akhir

Kod pseudo dihasilkan semula sama seperti yang diberikan; bagaimanapun, ambil perhatian bahawa dalam kes cksum,
A[i] mewakili bait fail, perkataan X and Y dianggap sebagai 32-bit tunggal
nilai, dan jadual f and f' ialah satu jadual yang mengandungi nilai 32-bit.

Artikel Sarwate yang dirujuk juga membincangkan penjanaan jadual.

MASA HADAPAN ARAHAN


Tiada.

Gunakan cksumposix dalam talian menggunakan perkhidmatan onworks.net


Pelayan & Stesen Kerja Percuma

Muat turun apl Windows & Linux

  • 1
    wxPython
    wxPython
    Satu set modul sambungan Python yang
    balut kelas GUI merentas platform daripada
    wxWidgets.. Khalayak: Pembangun. pengguna
    antara muka: Sistem Tetingkap X (X11), Win32 ...
    Muat turun wxPython
  • 2
    packfilemanager
    packfilemanager
    Ini ialah pengurus fail pek Total War
    projek, bermula dari versi 1.7. A
    pengenalan ringkas kepada Warscape
    pengubahsuaian: ...
    Muat turun packfilemanager
  • 3
    IPef2
    IPef2
    Alat trafik rangkaian untuk mengukur
    Prestasi TCP dan UDP dengan metrik
    sekitar kedua-dua pemprosesan dan kependaman. The
    matlamat termasuk mengekalkan aktif
    iperf cod...
    Muat turun IPrf2
  • 4
    fre:ac - penukar audio percuma
    fre:ac - penukar audio percuma
    fre:ac ialah penukar audio dan CD percuma
    ripper untuk pelbagai format dan pengekod.
    Ia menampilkan MP3, MP4/M4A, WMA, Ogg
    Format Vorbis, FLAC, AAC dan Bonk
    sokongan,...
    Muat turun fre:ac - penukar audio percuma
  • 5
    Matplotlib
    Matplotlib
    Matplotlib ialah perpustakaan yang komprehensif
    untuk mencipta statik, animasi, dan
    visualisasi interaktif dalam Python.
    Matplotlib menjadikan perkara mudah menjadi mudah dan
    benda susah...
    Muat turun Matplotlib
  • 6
    Botman
    Botman
    Tulis logik chatbot anda sekali dan
    sambungkannya ke salah satu yang tersedia
    perkhidmatan pemesejan, termasuk Amazon
    Alexa, Pengutus Facebook, Slack,
    Telegram atau pun anda...
    Muat turun BotMan
  • Lebih »

Arahan Linux

Ad