전체 글377 [Ethereum] 이더리움(Ethereum)이란? (+wallet 개념) Ethereum 제작자는 이더리움이 "World Computer"라고 이야기하고 있다. 여기서 World Computer란 이더리움 네트워크를 통해서 각각의 컴퓨터들이 동작하고, 이것을 전체적으로 봤을 때 하나의 컴퓨터처럼 보인다는 것이다. 학문적인 측면에서 봤을 때는 deterministic하고 unbounded state machine이기 때문에 컴퓨터와 비슷하나, 글로벌하게 동작하는 점에서 컴퓨터와 차이점을 가진다. 이더리움이란? : 블록체인 기술을 기반으로 Smart Contract 기능을 구현하기 위한 분산 컴퓨팅 플랫폼이자 운영체제이다. (위키백과) 대충 감이 잡혔을지는 잘 모르겠지만,, 이더리움은 웹 기반의 플랫폼으로 생각하자. 하지만 기존에는 웹서버가 존재해야 했고 Centralized한 .. 2021. 3. 19. [시스템] 메모리 주소 지정 방식 종류 어셈블리어에서 메모리 주소를 지정해주는 방식이 다양한 것을 볼 수 있다. 이참에 정리를 해보려 한다. 1. 레지스터 주소 지정 : 레지스터의 주소 값을 직접 지정하여 복사, 가장 빠름 (ex) MOV DX, BX 2. 직접 메모리 주소 지정 : 가장 일반적인 주소 지정 방식 보통 피연산자가 메모리 위치를 참조하고, 다른 하나는 레지스터를 참조함 (ex) MOV AL, DS:[1234h] MOV DS:[1234h], AL 3. 레지스터 간접 주소 지정 : '세그먼트 : 오프셋' 형식 (ex) MOV AL, [BX] MOV AL, [BP+20h] 4. 인덱스 주소 지정 : 레지스터 간접 지정 방식에 변위가 더해진 메모리 주소 지정 방식 (ex) MOV AL, [BX+20h] MOV AL, 20h [BX] 5.. 2021. 3. 17. [시스템] x86 시스템, 메모리 접근 모드와 동작 x86 시스템의 메모리 접근 모드와 동작 1. 실제 모드 : 20비트 주소를 사용하며, 논리 주소(20bit) = 세그먼트 레지스터 + 오프셋 레지스터 ** CS - IP DS - SI, DI, BX SS - SP, BP ES - SI, DI, BX 2. 보호 모드 : 32비트 주소를 사용하며, 현재 많이 사용하고 있는 MS-Window 혹은 리눅스에서 동작하는 방법이다. 동작 방법은 셀렉터+오프셋 -> 세그먼트 -> (선형구조) -> 페이징 -> 물리 주소 ** 실제 모드를 아직까지도 사용하고 있는 이유는 x86 시스템의 DOS 프로그램 호환성 때문이라고 함. 2021. 3. 17. [시스템] x86 시스템, 레지스터 종류 정리(핵심/간단) x86 시스템의 레지스터 종류 1. 범용 레지스터 - EAX : 누산기, 산술 연산 저장 - EBX : 베이스 레지스터, 특정 주소 저장 - ECX : 카운트 레지스터, 루프 횟수 혹은 시프트 비트수 저장 - EDX : 데이터 레지스터, 주로 입출력 동작에서 데이터 저장(큰 수에서는 EAX레지스터와 함께 사용) ** EAX(32비트) > AX(16비트) > AH+AL(각각 8비트) / EBX(32비트) > BX(16비트) > BH+BL(각각 8비트) ECX(32비트) > CX(16비트) > CH+CL(각각 8비트) / EDX(32비트) > DX(16비트) > DH+DL(각각 8비트) 2. 세그먼트 레지스터 - CS : 코드 세그먼트 레지스터, 기계 명령 포함 - DS : 데이터 세그먼트 레지스터, 데이터.. 2021. 3. 17. [Linux] 명령어 처리 결과 파일로 저장 리다이렉션(> 혹은 >> 혹은 (파일명) : 새로운 파일 생성, 기존 파일 내용 사라짐 - (명령) >> (파일명) : 기존 파일 끝에 내용 추가 (ex 1. ls 명령어 처리 결과 파일에 저장) ls -al > directory.txt (ex 2. ps 명령어 처리 결과 파일에 저장) ps -ef >> process.txt (ex 3. 파일명이 test인 파일 루트디렉토리에서 찾아서 파일에 저장) find / -name test > testfile.txt 오류 출력 리다이렉션 - (명령) 2> (파일명) : 표준 오류 메시지를 파일에 저장 (ex 1. ls /var에 대한 표준 출력은 ls.out에 저장, ls /var에 대한 표준 오류는 ls.err에 저장) ls /var 1> ls.out 2> ls.. 2021. 3. 17. [Linux] 기본 명령어 모음(vi 문서편집기) 파일 입력 모드 - i : 커서 앞에 문자 삽입 - a : 커서 뒤에 문자 삽입 - o : 현재 커서 줄 다음에 삽입 - O : 현재 커서 줄 이전에 삽입 // 명령 모드로 변경 Esc 누르기 파일 명령 모드 (기본) - x : 현재 커서 문자 삭제 - dd : 현재 커서 줄 삭제 - u : undo, 방금 실행한 명령 취소 - j : jump, 다음 줄로 넘어감 (저장) - w : 현재 파일명으로 저장 - w (파일명) : 뒤에 적은 파일명으로 저장 (종료) - q : vi 편집기 종료 - q! : 작업 내용 저장하지 않고 편집기 종료 - wq : 작업 내용 저장하고 편집기 종료 - ZZ : 작업 내용 저장하고 편집기 종료 (화면 이동) - ctrl버튼 + f : forward, 한 화면 아래로 - c.. 2021. 3. 17. [후기] 브라운스톤 - 부의 본능 총점 : 5점 만점에 3점. ★★★☆☆ 그냥 무난하게 스르륵 읽은 책이다. 살짝 주식을 하는 사람들의 심리에 대해서 분석해둔 책인 느낌이고, 맞는 말인 거 같기도? 생각하면서 읽었다. 경제학 책을 보면서 어.. 나도 해볼까 하는 생각에 혹하기는 했는데, 현재는 지금 공부에 충실하자고 마음을 다시 접었다. 나중에 시작할 땐 경제, 정치 모든 공부를 단단하게 준비하고 해보자ㅎ 부동산 관련 내용은 어느 정도 알고 있던 내용이었고, 진짜 뭘 어째야 하고 저째야하고 말하고 있진 않다. 돈 버는 방법(?)에 대해서는 자세히 알려주진 않는다. 기본만 알려주는 느낌! 그래도 이 사람이 어떠한 마인드로 돈을 벌었는가 어떠한 생각을 갖고 있는가를 보려고 읽을 수 있긴 할 거 같다. 하지만 베스트셀러까진 잘 모르겠.. 2021. 3. 9. [los 문제풀이] zombie_assassin 앞에서 풀었던 succubus 문제와 쿼리문이 동일하고, addslashes 함수를 보니 역슬래시를 사용해야 하는 문제인 것 같았다. GET방식으로 보낸 id와 pw값을 addslashes 함수와 strrev 함수가 감싸고 있었고, addslashes 함수는 간단하게 말해서 특수문자 앞에 \를 붙임으로써 일반 문자로 인식되게 하는 것이고, strrev 함수는 뒤집는 함수임을 기억하자. 일단 작은따옴표를 우회해야 하므로 역슬래시를 집어넣었다. 아래 사진과 같이 addslash 함수가 잘 적용된 것을 알 수 있었다. 그럼 id의 두 번째 작은따옴표 앞에 \만 붙일 수 있도록 하려면 어떻게 해야 할까? addslashes 함수를 역으로 이용해야겠다고 생각했다. addslashes 함수에서 특수문자(두 번째 작.. 2021. 3. 8. [los 문제풀이] succubus 아래 코드에서 GET방식으로 보낸 id와 pw값이 쿼리문에 들어가고, 해당되는 id값을 가져온다. 이때의 id값은 뭘 가져와야 할까? 문제가 풀리는 if문을 가져오면, 가져온 id값이 참일 경우에 문제가 풀린다. 따라서 우리는 1. select에 있는 작은따옴표를 우회한다. 2. id 값이 참이 되도록 쿼리문을 작성한다. 작은따옴표 우회는 작은따옴표 앞에 \(역슬래쉬)를 붙여 문자로 인식되도록 하는 것이다. 무슨 말이냐면, preg_match에서 필터링되는 특수문자를 입력할 때 \를 붙이는 것처럼 쿼리문 안에서 특수문자를 문자로 인식시키려면 역슬래쉬를 사용하면 된다. 그럼 id에는 \를 입력하면 아래와 같이 pw의 첫 번째 작은따옴표까지 한 문자로 인식하게 된다. pw에는 참 값과 주석이 포함되면 풀린다.. 2021. 3. 7. 이전 1 ··· 21 22 23 24 25 26 27 ··· 42 다음