ภาษาอังกฤษภาษาฝรั่งเศสสเปน

Ad


ไอคอน Fav ของ OnWorks

cksumposix - ออนไลน์ในคลาวด์

เรียกใช้ cksumposix ในผู้ให้บริการโฮสต์ฟรีของ OnWorks ผ่าน Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS

นี่คือคำสั่ง cksumposix ที่สามารถเรียกใช้ในผู้ให้บริการโฮสต์ฟรีของ OnWorks โดยใช้หนึ่งในเวิร์กสเตชันออนไลน์ฟรีของเรา เช่น Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS

โครงการ:

ชื่อ


cksum — เขียนไฟล์เช็คซัมและขนาด

เรื่องย่อ


ตกลง [ไฟล์...]

DESCRIPTION


พื้นที่ ตกลง ยูทิลิตี้จะคำนวณและเขียนไปยังเอาต์พุตมาตรฐานการตรวจสอบความซ้ำซ้อนแบบวัฏจักร
(CRC) สำหรับแต่ละไฟล์อินพุตและเขียนไปยังเอาต์พุตมาตรฐานจำนวน octets ในแต่ละไฟล์
ไฟล์. CRC ที่ใช้จะขึ้นอยู่กับพหุนามที่ใช้สำหรับการตรวจสอบข้อผิดพลาด CRC ใน
มาตรฐาน ISO/IEC 8802-3: 1996 (อีเธอร์เน็ต)

การเข้ารหัสสำหรับการตรวจสอบ CRC ถูกกำหนดโดยการสร้างพหุนาม:

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

ในทางคณิตศาสตร์ ค่า CRC ที่สอดคล้องกับไฟล์ที่กำหนดจะถูกกำหนดโดย
ขั้นตอนต่อไปนี้:

ในปี 1 n บิตที่จะประเมินถือเป็นสัมประสิทธิ์ของ mod 2 พหุนาม
M(x) ระดับปริญญา n-1. เหล่านี้ n บิตคือบิตจากไฟล์ที่มีมากที่สุด
บิตที่สำคัญคือบิตที่สำคัญที่สุดของออคเต็ตแรกของไฟล์และ
บิตสุดท้ายเป็นบิตที่มีนัยสำคัญน้อยที่สุดของออคเต็ตสุดท้าย เสริมด้วยบิตศูนย์ (if
จำเป็น) เพื่อให้ได้จำนวนเต็มของออคเต็ต ตามด้วยออคเต็ตอย่างน้อยหนึ่งออคเต็ต
แทนความยาวของไฟล์เป็นค่าไบนารี ออคเต็ตที่มีนัยสำคัญน้อยที่สุดก่อน
จะใช้จำนวนออคเต็ตที่น้อยที่สุดที่สามารถแทนจำนวนเต็มนี้ได้

2. M(x) คูณด้วย x32 (นั่นคือ เลื่อนไปทางซ้าย 32 บิต) และหารด้วย G(x) กำลังใช้
ส่วน mod 2 สร้างส่วนที่เหลือ R(x) ระดับ ≤ 31

3. สัมประสิทธิ์ของ R(x) ถือเป็นลำดับแบบ 32 บิต

4. ลำดับบิตได้รับการเสริมและผลลัพธ์คือ CRC

OPTIONS


ไม่

ตัวดำเนินการ


ตัวถูกดำเนินการดังต่อไปนี้จะได้รับการสนับสนุน:

ไฟล์ ชื่อพาธของไฟล์ที่จะตรวจสอบ ถ้าไม่ ไฟล์ มีการระบุตัวถูกดำเนินการ the
ต้องใช้อินพุตมาตรฐาน

STDIN


อินพุตมาตรฐานจะถูกนำมาใช้หากไม่มี ไฟล์ มีการระบุตัวถูกดำเนินการ และจะใช้ในกรณีที่ a
ไฟล์ ตัวถูกดำเนินการคือ '-' และการดำเนินการปฏิบัติต่อ '-' เป็นความหมายอินพุตมาตรฐาน
มิฉะนั้น จะไม่สามารถใช้อินพุตมาตรฐานได้ ดูส่วนไฟล์อินพุต

INPUT ไฟล์


ไฟล์อินพุตสามารถเป็นไฟล์ประเภทใดก็ได้

และพวกเรา ตัวแปร


ตัวแปรสภาพแวดล้อมต่อไปนี้จะส่งผลต่อการดำเนินการของ ตกลง:

ภาษา ระบุค่าเริ่มต้นสำหรับตัวแปรการทำให้เป็นสากลที่ไม่ได้ตั้งค่าหรือ
โมฆะ. (ดูปริมาณคำจำกัดความพื้นฐานของ POSIX.1-2008 Section 8.2,
สากล ตัวแปร เพื่อความเหนือกว่าของความเป็นสากล
ตัวแปรที่ใช้ในการกำหนดค่าของหมวดหมู่สถานที่)

LC_ALL หากตั้งค่าเป็นค่าสตริงที่ไม่ว่าง ให้แทนที่ค่าของค่าอื่นๆ ทั้งหมด
ตัวแปรความเป็นสากล

LC_CTYPE กำหนดสถานที่สำหรับการตีความลำดับไบต์ของข้อมูลข้อความ
เป็นอักขระ (เช่น ไบต์เดี่ยวเมื่อเทียบกับอักขระหลายไบต์ใน
ข้อโต้แย้ง)

LC_MESSAGES
กำหนดโลแคลที่ควรใช้เพื่อส่งผลต่อรูปแบบและเนื้อหาของ
ข้อความวินิจฉัยที่เขียนถึงข้อผิดพลาดมาตรฐาน

นศ กำหนดตำแหน่งของแค็ตตาล็อกข้อความสำหรับการประมวลผลของ LC_MESSAGES.

อะซิงโครนัส กิจกรรม


ผิดนัด

STDOUT


สำหรับแต่ละไฟล์ที่ประมวลผลได้สำเร็จ ตกลง ยูทิลิตี้จะเขียนดังต่อไปนี้
รูปแบบ:

"%ยู %d %s\n", <การตรวจสอบ>,# of ออกเตต>,ชื่อพา ธ>

ถ้าไม่ ไฟล์ มีการระบุตัวถูกดำเนินการ ชื่อพาธและนำหน้า จะถูกละเว้น

สแตเดอร์


ข้อผิดพลาดมาตรฐานจะใช้สำหรับข้อความวินิจฉัยเท่านั้น

เอาท์พุท ไฟล์


ไม่

ขยาย DESCRIPTION


ไม่

EXIT สถานภาพ


ค่าทางออกต่อไปนี้จะถูกส่งคืน:

0 ไฟล์ทั้งหมดได้รับการประมวลผลเรียบร้อยแล้ว

>0 เกิดข้อผิดพลาด

ผลกระทบที่เกิด OF ข้อผิดพลาด


ผิดนัด

พื้นที่ ดังต่อไปนี้ ส่วน เป็น ข้อมูล.

ใบสมัคร การใช้


พื้นที่ ตกลง โดยทั่วไปแล้วยูทิลิตี้จะใช้เพื่อเปรียบเทียบไฟล์ที่น่าสงสัยกับไฟล์ที่เชื่อถือได้อย่างรวดเร็ว
เวอร์ชันเดียวกันเช่นเพื่อให้แน่ใจว่าไฟล์ที่ส่งผ่านสื่อที่มีเสียงดังมาถึง
ไม่เสียหาย อย่างไรก็ตาม การเปรียบเทียบนี้ไม่ถือว่ามีความปลอดภัยในการเข้ารหัส NS
โอกาสที่ไฟล์จะเสียหายซึ่งสร้าง CRC เดียวกันกับต้นฉบับนั้นมีน้อย ตั้งใจ
การหลอกลวงนั้นยาก แต่ก็ใช่ว่าจะเป็นไปไม่ได้

แม้ว่าจะใส่ไฟล์เป็น ตกลง แบบไหนก็ได้ ผลลัพธ์ไม่จำเป็นต้องเป็นแบบไหนก็ได้
คาดหวังในไฟล์อุปกรณ์พิเศษอักขระหรือประเภทไฟล์ที่ไม่ได้อธิบายโดย System
ปริมาณอินเทอร์เฟซของ POSIX.1-2008 เนื่องจากปริมาณของ POSIX.1-2008 นี้ไม่ได้ระบุ
ขนาดบล็อกที่ใช้เมื่อทำการป้อนข้อมูล ไม่ต้องดำเนินการตรวจสอบผลรวมของไฟล์พิเศษของอักขระ
ข้อมูลทั้งหมดในไฟล์เหล่านั้น

อัลกอริธึมแสดงในรูปของบิตสตรีมที่แบ่งออกเป็นออคเต็ต หากไฟล์เป็น
ส่งระหว่างสองระบบและผ่านการแปลงข้อมูลใด ๆ (เช่นการเปลี่ยนแปลง
ไบต์ little-endian ที่สั่งซื้อไปยัง big-endian) ไม่สามารถคาดหวังค่า CRC ที่เหมือนกันได้
การดำเนินการที่ดำเนินการเปลี่ยนแปลงดังกล่าวอาจขยายออกไป ตกลง ในการจัดการดังกล่าว
สถานการณ์

ตัวอย่าง


ไม่

หลักการและเหตุผล


โปรแกรมภาษา C ต่อไปนี้สามารถใช้เป็นแบบจำลองเพื่ออธิบายอัลกอริทึมได้ มัน
ถือว่า a ถัง เป็นหนึ่งออคเต็ต นอกจากนี้ยังถือว่าไฟล์ทั้งหมดพร้อมใช้งานสำหรับ
หนึ่งผ่านฟังก์ชั่น สิ่งนี้ทำขึ้นเพื่อความเรียบง่ายในการแสดงให้เห็นถึง
อัลกอริธึม แทนที่จะเป็นแบบจำลองการนำไปใช้

คงที่ ไม่ได้ลงนาม ยาว ซีอาร์แท็ป[] = {
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, 0x8cf30ไม่ดี, 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 แบบยาวที่ไม่ได้ลงนาม (const unsigned char *b, size_t n)
{
/* อาร์กิวเมนต์อินพุต:
* const unsigned char* b == ลำดับไบต์เพื่อ checksum
* size_t n == ความยาวของลำดับ
*/

ลงทะเบียน size_t ฉัน;
ลงทะเบียน unsigned c, s = 0;

สำหรับ (i = n; i > 0; −−i) {
ค = *b++;
s = (s << 8) ^ crctab[(s >> 24) ^ c];
}

/* ขยายด้วยความยาวของสตริง */
ในขณะที่ (n != 0) {
ค = น & 0377;
น >>= 8;
s = (s << 8) ^ crctab[(s >> 24) ^ c];
}

กลับมา ~s;
}

แนวปฏิบัติทางประวัติศาสตร์ในการเขียนจำนวน ``บล็อก'' ถูกเปลี่ยนเป็นการเขียน
จำนวน octets เนื่องจากหลังไม่เพียง แต่มีประโยชน์มากกว่า แต่ยังรวมถึงประวัติศาสตร์ด้วย
การใช้งานไม่สอดคล้องกันในการกำหนดความหมายของ ``บล็อก''

อัลกอริธึมที่ใช้ได้รับการคัดเลือกเพื่อเพิ่มความทนทานในการปฏิบัติงานของ ตกลง. ทั้ง
ระบบ V หรือ BSD รวม อัลกอริทึมถูกเลือก เนื่องจากแต่ละข้อแตกต่างกันและ
แต่ละรายการเป็นพฤติกรรมเริ่มต้นในระบบเหล่านั้น ไม่มีการประนีประนอมที่เป็นจริงหาก
ทั้งสองถูกเลือก—แอปพลิเคชั่นในอดีตบางชุดจะพัง ดังนั้นชื่อ
ถูกเปลี่ยนเป็น ตกลง. แม้ว่าประวัติศาสตร์ รวม คำสั่งก็คงจะเป็น
เป็นเวลาหลายปี โปรแกรมที่ออกแบบมาเพื่อการพกพาข้ามระบบควรใช้
ชื่อใหม่

อัลกอริธึมที่เลือกจะขึ้นอยู่กับมาตรฐาน ISO/IEC 8802-3:1996
(Ethernet) สำหรับช่องลำดับการตรวจสอบเฟรม อัลกอริทึมที่ใช้ไม่ตรงกับ
คำจำกัดความทางเทคนิคของ a การตรวจสอบ; คำนี้ใช้ด้วยเหตุผลทางประวัติศาสตร์ ความยาวของ
ไฟล์นี้รวมอยู่ในการคำนวณ CRC เนื่องจากสิ่งนี้สอดคล้องกับความยาว
ทางอีเธอร์เน็ตใน CRC ของมัน แต่ยังเพราะมันป้องกันการชนกันโดยไม่ได้ตั้งใจ
ระหว่างไฟล์ที่ขึ้นต้นด้วยซีโร่ออคเต็ตชุดต่างๆ โอกาสที่ทั้งสอง
ไฟล์ต่างๆ จะสร้าง CRC ที่เหมือนกันได้มากเมื่อความยาวไม่เท่ากัน
ที่พิจารณา. การรักษาความยาวและเช็คซัมของไฟล์แยกกันจะทำให้ a
อัลกอริธึมที่แข็งแกร่งกว่าเล็กน้อย แต่การใช้งานในอดีตเป็นตัวเลขเดียวเสมอ
(เช็คซัมตามที่พิมพ์) แสดงถึงลายเซ็นของไฟล์ ได้ตัดสินใจแล้วว่า
การใช้ในอดีตถือเป็นข้อพิจารณาที่สำคัญยิ่ง

ข้อเสนอก่อนหน้านี้มีการปรับเปลี่ยนอัลกอริธึมอีเทอร์เน็ตที่เกี่ยวข้องกับการแตกไฟล์
ค่าตารางเมื่อใดก็ตามที่ผลลัพธ์ขั้นกลางกลายเป็นศูนย์ แสดงว่ามีน้อย
แข็งแกร่งกว่าวิธีการปัจจุบันและยากต่อการอธิบายหรือพิสูจน์ทางคณิตศาสตร์

การคำนวณที่ใช้เหมือนกับที่ให้ไว้ในรหัสเทียมใน Sarwate ที่อ้างอิง
บทความ. การแปลรหัสหลอกคือ:

X <− 0; Y <− 0;
for i <− m -1 ขั้นตอน -1 จนกระทั่ง 0 do
เริ่ม
T <− X(1) ^ AI];
X(1) <− X(0); X(0) <− Y(1); Y(1) <− Y(0); Y(0) <− 0;
ความคิดเห็น: ฉ[T] และ ฉ[T] หมายถึง ท-ธ คำ in
ตาราง f และ f' ;
X <− X ^ ฉ[T]; Y <− Y ^ f'[T];
ปลาย

รหัสเทียมถูกทำซ้ำตรงตามที่กำหนด อย่างไรก็ตาม โปรดทราบว่าในกรณีของ ตกลง,
AI] แทนไบต์ของไฟล์ คำว่า X และ Y จะถือว่าเป็น 32 บิต . เดียว
ค่าและตาราง f และ f' เป็นตารางเดียวที่มีค่า 32 บิต

บทความ Sarwate ที่อ้างอิงยังกล่าวถึงการสร้างตาราง

อนาคต ลู่ทาง


ไม่

ใช้ cksumposix ออนไลน์โดยใช้บริการ onworks.net


เซิร์ฟเวอร์และเวิร์กสเตชันฟรี

ดาวน์โหลดแอพ Windows & Linux

  • 1
    wxPython
    wxPython
    ชุดของโมดูลส่วนขยาย Python ที่
    ตัดคลาส GUI ข้ามแพลตฟอร์มจาก
    wxWidgets.. ผู้ชม: นักพัฒนา ผู้ใช้
    อินเทอร์เฟซ: ระบบ X Window (X11), Win32 ...
    ดาวน์โหลด wxPython
  • 2
    ผู้จัดการแพ็คไฟล์
    ผู้จัดการแพ็คไฟล์
    นี่คือตัวจัดการไฟล์ Total War pack
    โครงการ เริ่มตั้งแต่เวอร์ชัน 1.7 ก
    แนะนำสั้น ๆ เกี่ยวกับ Warscape
    การดัดแปลง: ...
    ดาวน์โหลดตัวจัดการไฟล์แพ็ค
  • 3
    ไอเพิร์ฟ2
    ไอเพิร์ฟ2
    เครื่องมือการรับส่งข้อมูลเครือข่ายสำหรับการวัด
    ประสิทธิภาพ TCP และ UDP พร้อมเมตริก
    รอบทั้งปริมาณงานและเวลาแฝง NS
    เป้าหมายรวมถึงการรักษาความกระตือรือร้น
    ไอเพิร์ฟ ค็อด...
    ดาวน์โหลด IPerf2
  • 4
    fre:ac - โปรแกรมแปลงไฟล์เสียงฟรี
    fre:ac - โปรแกรมแปลงไฟล์เสียงฟรี
    fre:ac เป็นตัวแปลงเสียงและซีดีฟรี
    ripper สำหรับรูปแบบและตัวเข้ารหัสต่างๆ
    มี MP3, MP4/M4A, WMA, Ogg
    รูปแบบ Vorbis, FLAC, AAC และ Bonk
    สนับสนุน, ...
    ดาวน์โหลด fre:ac - ตัวแปลงเสียงฟรี
  • 5
    Matplotlib
    Matplotlib
    Matplotlib เป็นห้องสมุดที่ครอบคลุม
    สำหรับการสร้างภาพนิ่ง ภาพเคลื่อนไหว และ
    การสร้างภาพแบบโต้ตอบใน Python
    Matplotlib ทำให้เรื่องง่าย ๆ เป็นเรื่องง่ายและ
    สิ่งที่ยาก...
    ดาวน์โหลด Matplotlib
  • 6
    บอทแมน
    บอทแมน
    เขียนตรรกะแชทบอทของคุณหนึ่งครั้งและ
    เชื่อมต่อกับหนึ่งในที่มีอยู่
    บริการส่งข้อความ รวมถึง Amazon
    Alexa, Facebook Messenger, หย่อน,
    โทรเลขหรือแม้แต่คุณ...
    ดาวน์โหลดบอทแมน
  • เพิ่มเติม»

คำสั่ง Linux

Ad