영어프랑스어스페인어

Ad


온웍스 파비콘

cksumposix - 클라우드의 온라인

Ubuntu Online, Fedora Online, Windows 온라인 에뮬레이터 또는 MAC OS 온라인 에뮬레이터를 통해 OnWorks 무료 호스팅 제공업체에서 cksumposix 실행

이것은 Ubuntu Online, Fedora Online, Windows 온라인 에뮬레이터 또는 MAC OS 온라인 에뮬레이터와 같은 여러 무료 온라인 워크스테이션 중 하나를 사용하여 OnWorks 무료 호스팅 공급자에서 실행할 수 있는 cksumposix 명령입니다.

프로그램:

이름


cksum — 파일 체크섬 및 크기 쓰기

개요


정액 [파일...]

기술


XNUMXD덴탈의 정액 유틸리티는 순환 중복 검사를 계산하고 표준 출력에 기록합니다.
(CRC) 각 입력 파일에 대해 각각의 옥텟 수를 표준 출력에 씁니다.
파일. 사용된 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 비트는 파일의 비트입니다.
유효 비트는 파일의 첫 번째 옥텟의 최상위 비트이고
마지막 비트는 마지막 옥텟의 최하위 비트이며 XNUMX비트로 채워집니다(만약
필요) 하나 이상의 옥텟이 뒤따르는 정수 옥텟 수를 달성하기 위해
파일의 길이를 이진 값으로 나타내며, 가장 중요하지 않은 옥텟이 먼저 표시됩니다.
이 정수를 나타낼 수 있는 가장 작은 수의 옥텟이 사용됩니다.

2. M(x)에 의해 곱해진다 x32(즉, 왼쪽으로 32비트 시프트됨)로 나눕니다. G(x) 사용
나머지를 생성하는 mod 2 나눗셈 R(x) 학위 ≤ 31.

3. 계수 R(x)는 32비트 시퀀스로 간주됩니다.

4. 비트 시퀀스가 ​​보완되고 결과가 CRC입니다.

옵션


없음.

피연산자


다음 피연산자가 지원됩니다.

파일 확인할 파일의 경로명. 그렇지 않은 경우 파일 피연산자가 지정되면
표준 입력을 사용해야 합니다.

STDIN


없는 경우 표준 입력이 사용됩니다. 파일 피연산자가 지정되고 다음과 같은 경우에 사용됩니다.
파일 피연산자는 '-' 구현은 다음을 처리합니다. '-' 표준 입력을 의미합니다.
그렇지 않으면 표준 입력이 사용되지 않습니다. INPUT FILES 섹션을 참조하십시오.

입력 파일


입력 파일은 모든 파일 유형이 될 수 있습니다.

환경 변수


다음 환경 변수는 실행에 영향을 미칩니다. 정액:

설정되지 않은 국제화 변수에 대한 기본값을 제공하거나
없는. (POSIX.1-2008의 기본 정의 볼륨을 참조하십시오. 섹션 8.2,
국제화 변수 국제화를 위해
로케일 범주의 값을 결정하는 데 사용되는 변수)

LC_ALL 비어 있지 않은 문자열 값으로 설정된 경우 다른 모든 값을 재정의합니다.
국제화 변수.

LC_CTYPE 텍스트 데이터의 바이트 시퀀스 해석을 위한 로케일 결정
문자로(예: 다중 바이트 문자가 아닌 단일 바이트
인수).

LC_메시지
의 형식과 내용에 영향을 주는 데 사용해야 하는 로케일을 결정합니다.
표준 오류에 기록된 진단 메시지.

NLS경로 처리를 위한 메시지 카탈로그의 위치를 ​​결정합니다. LC_메시지.

비동기 이벤트


기본.

표준 출력


성공적으로 처리된 각 파일에 대해 정액 유틸리티는 다음과 같이 작성합니다.
형식 :

"%유 %d %s\n", <체크섬>,# of 옥텟>,경로명>

없는 경우 파일 피연산자가 지정되었고 경로 이름과 그 선행 생략합니다.

STDERR


표준 오류는 진단 메시지에만 사용해야 합니다.

출력 파일


없음.

확장 기술


없음.

EXIT 지위


다음 종료 값이 반환됩니다.

0 모든 파일이 성공적으로 처리되었습니다.

>0 오류가 발생했습니다.

결과 OF 오류


기본.

XNUMXD덴탈의 수행원 섹션 are 유익합니다.

신청 사용법


XNUMXD덴탈의 정액 유틸리티는 일반적으로 의심스러운 파일을 신뢰할 수 있는 파일과 빠르게 비교하는 데 사용됩니다.
시끄러운 미디어를 통해 전송된 파일이 도착하도록 하는 것과 같은 동일한 버전
손대지 않은. 그러나 이 비교는 암호학적으로 안전한 것으로 간주될 수 없습니다. NS
원본과 동일한 CRC를 생성하는 손상된 파일의 가능성은 적습니다. 고의의
속임수는 어렵지만 불가능하지는 않을 것입니다.

파일을 입력하지만 정액 모든 유형이 될 수 있으며 결과는 다음과 같을 필요가 없습니다.
문자 특수 장치 파일 또는 시스템에서 설명하지 않은 파일 유형에서 예상됨
POSIX.1-2008의 인터페이스 볼륨. POSIX.1-2008의 이 볼륨은 지정하지 않기 때문에
입력할 때 사용되는 블록 크기, 문자 특수 파일의 체크섬을 처리할 필요가 없습니다.
해당 파일의 모든 데이터.

알고리즘은 옥텟으로 분할된 비트스트림으로 표현됩니다. 파일이
두 시스템 간에 전송되고 모든 데이터 변환(예:
little-endian byte order to big-endian), 동일한 CRC 값을 기대할 수 없습니다.
이러한 변환을 수행하는 구현은 확장될 수 있습니다. 정액 그런 것을 처리하기 위해
상황.

사용 예


없음.

이론적 해석


다음 C 언어 프로그램은 알고리즘을 설명하는 모델로 사용할 수 있습니다. 그것
가정한다 이륜 전차 한 옥텟입니다. 또한 전체 파일을 사용할 수 있다고 가정합니다.
함수를 한 번 통과합니다. 간단하게 보여드리기 위해 이렇게 했습니다.
구현 모델이 아닌 알고리즘.

정적 인 부호 crctab[] = {
0x00000000,
0x04c11db7, 0x09823b6e, 0x0d4326d9, 0x130476dc, 0x17c56b6b,
0x1a864db2, 0x1e475005, 0x2608edb8, 0x22c9f00f, 0x2f8ad6d6,
0x2b4bcb61, 0x350c9b64, 0x31cd86d3, 0x3c8ea00a, 0x384fbdbd,
0x4c11db70, 0x48d0c6c7, 0x4593e01e, 0x4152fda9, 0x5f15아닥,
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, 0x3352bbbe6, 0x3e119d3f, 0x3ad08088, 0x2497d08d,
0x2056cd3a, 0x2d15ebe3, 0x29d4f654, 0xc5a92679, 0xc1683bce,
0xcc2b1d17, 0xc8ea00a0, 0xd6ad50a5, 0xd26c4d12, 0xdf2f6bcb,
0xdbee767c, 0xe3a1cbc1, 0xe760d676, 0xea23f0af, 0xee2ed18,
0xf0a5bd1d, 0xf464a0aa, 0xf9278673, 0xfde69bc4, 0x89b8fd09,
0x8d79e0be, 0x803ac667, 0x84fbdbd0, 0x9abc8bd5, 0x9e7d9662,
0x933eb0bb, 0x97ffad0c, 0xafb010b1, 0xab710d06, 0xa6322bdf,
0xa2f33668, 0xbcb4666d, 0xb8757bda, 0xb5365d03, 0xb1f740b4
};

unsigned long memcrc(const unsigned char *b, size_t n)
{
/* 입력 인수:
* const unsigned char* b == 체크섬에 대한 바이트 시퀀스
* size_t n == 시퀀스 길이
*/

레지스터 size_t i;
부호 없는 c 등록, s = 0;

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

/* 문자열의 길이로 확장합니다. */
동안 (n != 0) {
c = n & 0377;
n >>= 8;
s = (s << 8) ^ crctab[(s >> 24) ^ c];
}

반환 ~s;
}

``블록''의 수를 기록하는 역사적 관행은 쓰기로 변경되었습니다.
후자가 더 유용할 뿐만 아니라 역사적
구현은 ``블록''이 의미하는 바를 정의하는 데 일관성이 없었습니다.

사용된 알고리즘은 운영 견고성을 높이기 위해 선택되었습니다. 정액. 어느 쪽이든
시스템 V나 BSD 알고리즘을 선택했습니다. 각각 다르기 때문에,
각각은 해당 시스템의 기본 동작이었습니다.
둘 중 하나가 선택되었습니다. 일부 과거 응용 프로그램 집합이 중단됩니다. 따라서 이름
로 변경되었습니다 정액. 비록 역사적 명령은 아마도 계속될 것입니다
수년 동안 제공된 시스템 간 이식성을 위해 설계된 프로그램은 다음을 사용해야 합니다.
새 이름.

선택한 알고리즘은 ISO/IEC 8802-3:1996 표준에서 사용하는 알고리즘을 기반으로 합니다.
(이더넷) 프레임 검사 시퀀스 필드. 사용된 알고리즘이 일치하지 않습니다.
의 기술적 정의 체크섬; 이 용어는 역사적 이유로 사용됩니다. 길이
이 파일은 길이를 포함하는 것과 평행하기 때문에 CRC 계산에 포함됩니다.
CRC의 이더넷에 의한 필드뿐만 아니라 부주의한 충돌을 방지하기 때문에
서로 다른 일련의 XNUMX 옥텟으로 시작하는 파일 사이. 기회는 두
다른 파일은 동일한 CRC를 생성하지만 길이가 같지 않을 때 훨씬 큽니다.
존경받는. 파일 자체의 길이와 체크섬을 별도로 유지하면
약간 더 강력한 알고리즘이지만 역사적 사용은 항상 단일 숫자였습니다.
(인쇄된 체크섬)은 파일의 서명을 나타냅니다. 하기로 결정
역사적 사용이 더 중요한 고려 사항이었습니다.

초기 제안에는 추출과 관련된 이더넷 알고리즘에 대한 수정이 포함되었습니다.
중간 결과가 XNUMX이 될 때마다 테이블 값. 이 적은 것으로 나타났다.
현재 방법보다 강력하고 수학적으로 설명하거나 정당화하기 어렵습니다.

사용된 계산은 참조된 Sarwate의 의사 코드에 제공된 계산과 동일합니다.
기사. 의사 코드 변환은 다음과 같습니다.

X <- 0; Y <- 0;
for i <- m - 1 단계 - 1 까지 0 do
시작하다
T <- X(1) ^ 일체 포함];
X(1) <- X(0); X(0) <- Y(1); Y(1) <- Y(0); Y(0) <- 0;
논평: f[티] f'[T] 표시하다 전에, T번째 in 전에,
테이블 f f' ;
X <- X ^ 에프[티]; Y <- Y ^ f'[T];
end

의사 코드는 주어진 대로 정확하게 재현됩니다. 그러나 정액,
일체 포함] 파일의 바이트를 나타내며, 단어 XY 단일 32비트로 처리됩니다.
값 및 테이블 ff' 32비트 값을 포함하는 단일 테이블입니다.

참조된 Sarwate 기사에서는 테이블 생성에 대해서도 설명합니다.

미래 오시는 길


없음.

onworks.net 서비스를 사용하여 cksumposix 온라인 사용


무료 서버 및 워크스테이션

Windows 및 Linux 앱 다운로드

  • 1
    wx파이썬
    wx파이썬
    Python 확장 모듈 세트
    크로스 플랫폼 GUI 클래스를 래핑합니다.
    wxWidgets.. 청중: 개발자. 사용자
    인터페이스: X 윈도우 시스템(X11), Win32 ...
    wxPython 다운로드
  • 2
    팩 파일 관리자
    팩 파일 관리자
    Total War 팩 파일 관리자입니다.
    버전 1.7부터 프로젝트. ㅏ
    Warscape에 대한 짧은 소개
    모딩: ...
    팩파일매니저 다운로드
  • 3
    IPerf2
    IPerf2
    측정을 위한 네트워크 트래픽 도구
    메트릭을 사용한 TCP 및 UDP 성능
    처리량과 대기 시간 모두에 대해. 그만큼
    목표에는 활성 유지가 포함됩니다.
    iperf 대구...
    IPerf2 다운로드
  • 4
    fre:ac - 무료 오디오 변환기
    fre:ac - 무료 오디오 변환기
    fre:ac는 무료 오디오 변환기이자 CD입니다.
    다양한 포맷과 인코더를 위한 리퍼.
    그것은 MP3, MP4/M4A, WMA, Ogg 기능
    Vorbis, FLAC, AAC 및 Bonk 형식
    지원하다, ...
    다운로드 fre:ac - 무료 오디오 변환기
  • 5
    매트플롯립
    매트플롯립
    Matplotlib는 포괄적인 라이브러리입니다.
    정적, 애니메이션 및
    Python의 대화형 시각화.
    Matplotlib은 쉬운 일을 쉽고
    어려운 것...
    Matplotlib 다운로드
  • 6
    봇맨
    봇맨
    챗봇 로직을 한 번 작성하고
    사용 가능한 것 중 하나에 연결
    Amazon을 포함한 메시징 서비스
    알렉사, 페이스북 메신저, 슬랙,
    텔레그램이나 요...
    봇맨 다운로드
  • 더»

Linux 명령

Ad