본문 바로가기
반응형

Study64

[블록체인] 디지털 서명(Digital Signature) 서론 블록체인을 공부하면서 알게된 보안 방법인 디지털 서명에 대해 알아 보고자 한다. 생각보다 어려운 내용은 아니었다. 그렇지만 정확히 이해하지 않는다면 헷갈리기 쉬운 내용이며 당장 이해한다고 해도 바탕을 꽉 잡아두지 않는다면 뒤죽박죽 기억할 느낌이다. 익혀두면 요긴하게 사용할 수 있을 듯 하다. 이 후에 설명할 디지털 서명은 주로 블록체인에서 사용할 방식들 이다. 디지털 서명 디지털 데이터의 진위성과 무결성을 검증하는 암호화 방법. 블록체인에서는 트랜잭션의 진위성과 무결성을 검증하기 위해 사용한다. 공개키 암호화 방식 PKC 하나의 공개키와 하나의 개인키를 통해 암호화하는 방식. 데이터를 암호화할 수 있고 디지털 서명에도 이용할 수 있다. 공개키를 통해 데이터를 암호화 하고 개인키를 통해 암호화 된 데.. 2021. 9. 10.
[Algorithm]Programmers_17683_방금그곡_Java 문제 링크 방금그곡 : 링크 문제 풀이 음악 하나 하나를 저장할 class 객체를 만든다. #이 붙은(갯수는 하나지만 length가 2인) 악보를 겹치지 않는 다른 문자로 변환한다. 답이 여러개 일 경우를 대비하여 running time을 계산한다. array list에 값을 넣기 때문에 running time이 같다면 먼저 저장된 음악이 답임을 생각한다. 코드 package Programmers.LV2; import java.util.ArrayList; public class Q17683 { static class Music{ int runningTime; String name; String infos; public Music(int runningTime, String name, String infos.. 2021. 9. 3.
[OS] 교착상태(DeadLock)란? 교착상태란? 다중프로그래밍을 지원하는 프로세스는 한정된 데이터를 읽고 쓰기 위해 경쟁하게 된다. 이 경쟁 과정에서 생길 수 있는 문제를 예방하기 위해 데이터는 프로세스가 점유 상태라면 다른 프로세스의 접근을 막는 방법을 주로 사용하게 되는데 그 결과 같은 두개의 데이터를 필요로 하는 두 프로세스가 각각 하나씩 점유하게 되면 무한정 대기상태에 빠지게 되는데 이러한 상태를 교착상태라 한다. 교착 상태가 생기기 위한 조건 교착상태는 아래의 네가지 조건을 충족해야 일어난다 상호배제(mutual exclusion) 한 리소스는 한번에 한 프로세스만이 사용 할 수 있음(화장실 키) 점유하며 대기(hold-and-height) 프로세스는 최소한 하나의 점유한 채, 현재 다른 프로세스에 의해 점유된 자원을 추가로 얻기.. 2021. 9. 2.
[Network] HTTP란? 그리고 HTTP 1.1, HTTP 2 Rest API가 HTTP/1.0의 특징과 연관이 있듯 gRPC에 대해 알아보니 HTTP/2.0의 특징과 큰 연관이 있는 듯 하다. 근본이 되는 기술을 공부해 두는게 좋겠지.. 면접에서도 종종 나오는 질문인듯하고. 아자아자! HTTP란? HTTP(Hypher Text Transfer Protocol)란 웹에서 데이터를 주고 받기 위한 프로토콜 즉, 일종의 약속이다. 주로 TCP/IP 전송계층을 사용한다.(Google님이 HTTP를 3.0버전을 UDP를 사용하여 제작했다. 정보를 찾아보니 많은 장점이 있던데 이를 통해 또 어떤 기술이 생겨날지 기대된다.) HTTP의 특징 TCP/IP 전송 계층을 사용하는 애플리케이션 계층의 프로토콜 비연결성 프로토콜 Client 측과 Server측의 request, res.. 2021. 9. 2.
[Go] 고루틴(Goroutine) 알고쓰기(1) - 동시성, 병렬성 프로그래밍 그리고 고루틴 그냥 가져다 쓰면 되는줄 알았는데 공부할게 정말 많은 부분이었다. 간단히 기억하기 위해 포스팅을 하려 했으나 생각보다 모르는 부분이 많았고 공부할 가치가 있다 판단하여 조금 깊게 들여다 보았다. 동시성? 병렬성? 무어의 법칙을 아는가? 인텔의 공동 창업자인 무어가 반도체가 1년에 2배씩 빨라 질 것을 예언하였고 어느 시기까지는 들어 맞았다. 하지만 발열량과 같은 물리적 한계에 부딪혔고 더이상 무어의 법칙이 적용되기 어려운 시기까지 도달하게 됐다. 하지만 컴퓨터와 같은 기기들은 계속해서 빨라졌다. 해답을 찾은 것이다. 바로 반도체 하나의 성능을 높일 수 없으니 여러개의 반도체를 사용하기로...!( 공부하다 재밌어서.. + 연관 있음 ) 동시성 컴퓨터의 코어가 하나(싱글 코어)일 때를 생각해 보자. 우리는 .. 2021. 9. 1.
[Server] REST API란? REST API 알고 쓰기 HTTP란? HTTP(Hyper Text Transfer Protocol)는 웹브라우저와 웹서버가 통신을 하기위한 통신 규칙이다. 굉장히 단순했던 HTTP는 웹의 발전으로 성능, 보안,안정성을 확보하는것이 어려워 졌다. 이러한 문제를 해결하기 위해 HTTP는 계속해서 발전해 왔다. 기존엔 메시지만 전송이 가능했었지만 이미지, 오디오, 동영상과 같은 멀티미디어 파일을 전송할 수 있는 protocol로 진화하게 됐다. 이제는 웹을 넘어서 인터넷을 지휘하는 통신 규약이 됐다. API(Application Programming Interface)란? 컴퓨터의 기능을 실행 시키는 방법 서로 정보를 교환하는 행위를 가능하게 하는 도구 REST(REpresentational State Transfer) API란? 내.. 2021. 8. 31.
반응형