전체 글 55

[블록체인] 정리2

Cryptology 암호학. 비밀스러운 communication을 위해 개발 되었다. 이를 세분화하면 Cryptography: 공격에 대한 방어를 공부하는 학문 Ctyptanalysis: 공격하는 것에 대해 공부하는 학문 Cryptographic goals Confidentialitay 기밀성 Syemmetric-key ciphers 대칭키(symmetric key)를 생성하여 이를 통해 데이터를 암호화/복호화 하는 방식 사용자가 대칭키(symmetric key)로 데이터를 암호화하고, 서버도 같은 대칭키(symmetric key)로 데이터를 복호화 함 Block ciphers 기밀성있는 정보를 정해진 블록 단위로 암호화 하는 대칭키 암호 시스템 Stream ciphers Plain text와 이와 길이..

블록체인 2023.10.26

블록체인 정리1

기존 암호 화폐의 문제점 기존 암호화폐 시스템은 보증 기관에서 암호화페를 발급받고, 이를 발급받은 사용자가, 누군가와 거래를 할 때 상대방이, 유효성을 보증 기관에서 증명받아야 하는 시스템이다. 이는 신뢰하는 기관이 있어야 한다. 보증 기관은 거짓을 하지 않아야 한다. 두 조건을 필요로 한다. 에스크로(Escrow) 서비스 구매자와 판매자 간의 전자상거래가 원활히 이루어질 수 있도록 중계하는 매매보호 서비스 고객이 쇼핑몰로부터 주문한 상품에 대해 고객의 결제 대금을 PG사가 예치하고 있다가 배송이 최종 완료되었을 때 쇼핑몰에게 입금해 주는 매매보호 서비스 이 또한 중앙 기관의 신뢰성을 필요로 한다. 비트 코인의 탄생 기존 암호화폐의 문제점을 보증 기관을 과정에서 제외시킴으로써 해결하려 하였다. 보증 기관..

블록체인 2023.10.26

[Java] public void static main(String args)의 의미

main함수는 public이어야한다 메인함수는 어디서나 접근 가능한 함수여야 한다. 만약 private나 protected라면 그게 불가능하므로 public이다. static static은 앞에 static을 붙여주고 heap은 new 생성자 등으로 만든다. 메인 함수는 gabage collector에 죽으면 프로그램이 망가지니 static으로 설정된다. void 메인함수가 끝나면 프로그램이 종료되기에 return값이 있어서는 안된다. String args[] 메인 함수는 처음으로 실행되는 함수이기에, 외부로부터 값을 받아올 수 있어야 한다. 그래서 외부에서 받아오기 위해 String args[]를 사용하는 것이다. 이 때 배열인 이유는 여러 값을 받아올 수도 있기에

java 2023.10.26

[Java] 예외처리, throwable이란/ try,catch,throw,finally란?

Throwable 예외가 발생하면 해당 예외에 해당하는 예외 클래스의 인스턴스를 생성한다. Object 클래스를 제외하고 예외처리의 최상위 클래스는 Throwable이다 예외 처리에서 자주 사용되는 메소드 public String getMassage() 예외의 원인을 담고 있는 문자열을 반환 public void printStackTrace() 예외가 발생한 위치와 호출된 메소드의 정보를 출력 Throwable클래스를 상속하는 클래스는 주로 세가지 Error 클래스 에러 클래스를 상속하는 예외는 IOError, VirtualMarchineError등으로 우리가 처리할 수 없는 에러이다. 즉 프로그램이 종료되도록 그냥 놔둬야 한다. RunTimeException 클래스 이는 사용자가 처리할 수 있는 에러가..

java 2023.10.26