본문 바로가기

전체 글377

[Ethereum] 이더리움에서 사용하는 암호학 이더리움에서 사용하는 암호학 - 전자서명 : account를 증명함. - 해시함수 : transaction의 무결성을 증명함. 전자서명은 이더리움 계정(account)에서 사용하는데, 전자서명을 생성하기 위해 private key가 필요하다. 따라서 EOA에서 사용하고 있으며(contract account에서는 사용 못함), transaction을 하기 위해서는 올바른 전자서명을 붙여서 전송하는데 이때, 공개키 암호화 알고리즘을 통해 account를 확인한다. (private key는 사용자 측에 저장되어 있으며 절대로 옮겨지거나 전송되지 않는다.) 공개키 암호화 알고리즘은 이더리움 상에 새로운 account를 생성할 때 이를 사용한다. - 상대방의 public 키로 암호화하고, 데이터를 받은 본인은 본.. 2021. 6. 3.
[창의적 프로그래밍을 위한 파이썬] 9장 연습문제 1. 반복의 횟수를 미리 지정할 수 있는 경우 또는 범위를 알고 있는 경우에는 ( for문 )을, 그렇지 않고 반복의 횟수를 조건식에 의존하는 경우에는 ( while문 )을 사용한다. 2. 다음 프로그램 중 잘못된 부분을 찾아보자. count = 1 while count 2021. 5. 23.
[창의적 프로그래밍을 위한 파이썬] 8장 연습문제 1. 아래의 예시를 보고 list형과 tuple형 중 선택하여 각각 빈칸을 채워보자. 홈페이지에서 정보 수정 및 추가를 위해 사용할 수 있는 자료형은 ( list형 )이고, 해킹으로 인한 정보 수정을 막기 위해 사용할 수 있는 자료형은 ( tuple형 )이다. 2. list와 tuple형은 index 구조이기 때문에 ( slice기능 )과 ( 연산 )이 가능하다. 3. 맞으면 O, 틀리면 X를 표시해보자. [O, X문제] 1번. >>> tuple = ('Hello', 'My', 'name', 'is', '예슬') >>> tuple[4] = '지수' 위의 프로그램을 실행했을 경우, tuple의 원소 값은 ('Hello', 'My', 'name', 'is', '지수') 이다. (X) 2번. tuple에서도 .. 2021. 5. 23.
[후기] 이경혜 - 어느 날 내가 죽었습니다(강추) 총점 : 5점 만점에 8점. ★★★★★ + ★★★ 어느 날 내가 죽었습니다. 내 죽음의 의미는 무엇일까요? . . . 내가 주인공도 아닌데,, 갑자기 죽어버린 재준이가 원망스러워졌다. 재준이가 남겨놓은 일기장엔 맹랑하고 나도 몰랐던 재준이가 남아있었고, 혼자서 죽은 영혼 놀이를 하고 있었다. 죽은 영혼 놀이, 그냥 스스로를 죽은 사람 취급했던 것이었다. 그래도 진짜로 그렇게 가버리면.. "어느 날 내가 죽었습니다. 내 죽음의 의미는 무엇일까요?" 재준이가 일기장에 써놓은 두 구절은 절대 잊히지 않을 것 같다. 2021. 5. 14.
[창의적 프로그래밍을 위한 파이썬] 7장 연습문제 1. 다음 프로그램의 결과를 예상해보자. list1 = ['n', 'e', 'w', 'l', 'i', 's', 't'] list2 = ['n', 'e', 'w', 's', 't', 'r', 'i', 'n', 'g'] list_new = list1[3] + list2[6] print(list_new) : li 2. 다음 실행문의 결과는 무엇인가? >>> title = ['P', 'r', 'o', 'g', 'r', 'a', 'm', 'm', 'i', 'n', 'g'] >>> title [:7] : ['P', 'r', 'o', 'g', 'r', 'a', 'm'] 3. words라는 list 안에 happy, love, I, am, You라는 단어가 차례로 들어가 있다. 이 단어들로 문장을 만들어보자. word.. 2021. 4. 30.
[창의적 프로그래밍을 위한 파이썬] 6장 연습문제 1. 다음 실행문의 결과를 예상해보자. number = 18 if number 5: print('A') else print('B') else : print('C') : C 2. 조건이 많아지는 경우 ( 중첩 조건문 )은 프로그램의 실행시간이 짧아진다는 장점이 있는 반면 프로그램을 코딩한 사람 외에는 해당 프로그램을 해석하기 어렵다는 단점이 있다. 그러한 프로그램을 ( if-elif-else문 )으로 프로그래밍하게 되면 프로그램의 실행 시간은 길어지는 단점이 있으나 다른 누군가가 그 프로그램을 해석하기 쉬워지는 장점이 있다. 3. 다음 요구사항에 따라 프로그램을 작성해보자. (요구사항 생략) size = float(input('손가락 둘레 입력 : ')) if (51.0 .. 2021. 4. 21.
[창의적 프로그래밍을 위한 파이썬] 5장 연습문제 1. 다음 코드의 실행 결과를 예측해보자. >>> a = False >>> b = a >>> type(b) : bool 2. ( 할당문 ) 연산자인 ( = )은 변수에 어떤 값을 할당하는 데 사용하는 연산자이고, ( 비교 ) 연산자인 ( == )은 서로 다른 두 변수의 값이 같은지를 확인하는 데 사용하는 연산자이다. 3. 다음 실행문의 잘못된 부분을 찾아보자. >>> if a>b: print('***') print('True') print('***') : if문에 속하는 모든 문장을 들여 쓰기 해야 하지만 들여 쓰기가 첫 번째와 세 번째 print문이 제대로 되지 않고 있다. 4. 다음 요구사항에 따라 프로그램을 작성해보자. (요구사항 생략) iq = input("IQ를 입력하세요: ") iq = int.. 2021. 4. 20.
[창의적 프로그래밍을 위한 파이썬] 4장 연습문제 1. 다음 프로그램의 결과는 무엇인가? >>> start = '*' * 10 >>> title = "Lst's have fun" >>> finish = '*' * 10 >>> print(start + title + finish) : **********Let's have fun********** 2. 다음 프로그램의 결과는 무엇인가? >>> title = 'Mission Impossible' >>> title[9:13] : 'mpos' 3. 다음 실행문의 잘못된 부분을 찾아보자. >>> n = input('Enter the number') Enter the number : 7 >>> m = n * 4 : input('Enter the number : ') 로 변경해주고, 입력한 n은 문자이므로 숫자와 곱해.. 2021. 4. 20.
[창의적 프로그래밍을 위한 파이썬] 3장 연습문제 1. 더하기, 곱하기, 빼기, 나누기 연산자를 써보자. >>> a = 3+5 >>> b = 5-3 >>> a/b 4.0 >>> a*b 16 2. '//' 연산자는 나눗셈 연산의 ( 몫 )만을 결과로 나타내고, '%' 연산자는 나눗셈 연산의 ( 나머지 )만을 결과로 나타낸다. 3. 다음 실행문의 잘못된 부분을 찾아보자. : a의 값을 선언해주지 않았다. 아래와 같이 코드를 짜주자. >>> a = 1 >>> b = a+1 4. 다음 실행문이 잘못된 이유를 기술해보자. : 변수명은 문자 혹은 언더바로 시작해야 한다. (숫자 X) 5. 다음 실행문 값을 구해보자. >>> 2 * 3 ** (1+2) 54 >>> 3 ** 4 / (2+2) 20.25 >>> 7 // 4 + 1 ** 5 2 >>> 6 + 11 * 2.. 2021. 4. 19.