11. 다음 프로그램은 main의 두 정수 a와 b에 대해 나누기를 한 몫과 나머지를 quotient와 remainder에 구하여 출력하기 위한 것이다. 그러나 프로그램을 실행하면 잘못된 결과가 나온다. 프로그램에서 잘못된 곳을 찾아 이유를 설명하고 바르게 수정하시오. #include void division(int x, int y, int q, int r); int main(void) { int a = 75, b = 8, quotient, remainder; division(a, b, quotient, remainder); printf("%d / %d = %d\n", a, b, quotient); printf("%d %% %d = %d \n", a, b, remainder); return 0; } //..
1. 다음은 출금 서비스를 위한 보기용 프로그램이다. 프로그램의 14, 16, 28, 29, 31, 32, 41행에서 변수 참조 규칙을 어기고 있는데, 그 이유를 설명하시오. #include int check_PW(); //비밀번호 확인 서비스 void withdraw(); //출금 서비스 char name[10] = "한국은행"; //서비스 업체 이름 int main(void) { char reply; int balance = 100000, system_PW = 1111; //계좌의 현재 잔액, 시스템 비밀번호 do { printf("%s의 출금 서비스입니다.", name); if (check_PW()) withdraw(); else { printf("%d원의 출금을 요청하셨으나", amount); p..
11. [프로그램 8-32]를 반복문 형태로 수정하시오. #define _CRT_SECURE_NO_WARNINGS #include void palindrome(int n); int main() { int n; printf("양의 정수 n을 입력하면 거꾸로 출력하는 프로그램입니다. n은? "); scanf("%d", &n); palindrome(n); return 0; } // 양의 정수 n을 거꾸로 출력하는 재귀적 함수 void palindrome(int n) { // n의 끝자리 값 출력하기 printf("%d", n % 10); // n이 10단위 이상의 값이라면 재귀 호출로 나머지 자리를 출력하기 if (n >= 10) palindrome(n / 10); } #define _CRT_SECURE_NO..
공인인증서 전자 서명을 검증하는 데 필요한 공개키에다 소유자 정보를 추가한 증명서이다. CA(Certificate Authority, 인증기관)와 사용자 간 인증서 체결을 통해 사용자 공개키를 인증한다. 사용자는 검증키와 서명키 쌍을 보유한다. CA는 사용자 정보를 확인하고, 검증키와 사용자 정보에 서명해 인증서를 생성한 후 사용자에게 전달한다. CA에서 받은 인증키로 검증키를 인증하고, 서명을 확인한다. 사용자는 개인 서명키를 이용해 데이터나 자금을 거래할 수 있다. 서명 압축(Signature Aggregation) 블록체인에서 서명이 차지하는 비중은 크다. 효율성을 위해서 서명 크기를 줄여야 하는데, 이를 구현한 것이 서명 압축이다. 다수의 서명을 하나로 압축하는데, 개수에 상관 없이 일정한 크기로..
전자서명 전자서명은 서명자가 전자문서에 서명했다는 사실을 확인할 수 있는 정보이다. 키 생성 알고리즘, 서명 알고리즘, 검증 알고리즘으로 구성된다. 키 생성 알고리즘 전자서명을 생성하는 서명키와 서명을 확인하는 검증키를 생성한다. 서명키와 검증키는 개인 별로 다르게 만들어진다. 서명키는 서명하는 본인만 아는 비밀정보이다. 검증키는 모든 이가 아는 공개된 정보이다. 서명키로부터 검증키를 도출할 수는 있지만, 검증키로부터 서명키를 계산할 수는 없다. 서명 알고리즘 문서를 받아 서명키를 사용해 서명값을 계산한다. 문서의 크기가 크다면 알고리즘 내부에서 해시 함수를 사용해 크기를 줄인다. 서명자만이 알고 있는 서명키를 사용해 전자서명을 만든다. 검증 알고리즘 문서와 서명값을 입력으로 받고, 검증키를 사용해 서명..
| 내 블로그 - 관리자 홈 전환 |
Q
Q
|
|---|---|
| 새 글 쓰기 |
W
W
|
| 글 수정 (권한 있는 경우) |
E
E
|
|---|---|
| 댓글 영역으로 이동 |
C
C
|
| 이 페이지의 URL 복사 |
S
S
|
|---|---|
| 맨 위로 이동 |
T
T
|
| 티스토리 홈 이동 |
H
H
|
| 단축키 안내 |
Shift + /
⇧ + /
|
* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.