분류 전체보기191 Git 기본 개념 정리 1. GIT의 역사 Git(깃) 리눅스 커널 개발을 개발한 핀란드 개발자 리누스 토발즈가 만든 버전 관리 툴(VCS : Version Control System)이다. 프로그래머가 작업한 소스코드를 압축하여 별도의 저장소(Repository)에 저장해두고 작업한 history를 열람할수 있도록 개발한 툴이 Git이다. Linux 기반으로 개발되었기 때문에, Bash 명령 기반으로 명령을 입력하여 실행하는 방식이지만, Web과 같은 GUI기반의 툴도 존재한다. Commit의 구조 git commit명령으로 실행 가능하며, Local Repository에 현재 작업한 소스코드를 저장하기위해 사용된다. 하나의 commit이 추가될때는 이전 commit에서 변경된 부분만 추가된다. 즉 commit은 chain .. 2019. 6. 4. Jenkins 꼭 써야하나? Jenkins는 무엇인가? 쉽게 말해, 빌드를 자동화해주고 빌드로 생성된 이미지를 자동으로 서버에 올려주는 등의 일(배포, release)을 하는 웹 기반 자동 빌드 툴이다. 그럼 빌드란 무엇인가? 빌드는 쉽게 말해, 어떤 Target을 실행을 시키기 위한 이미지를 생성하는 과정이다. 보통 c파일과 같은 개별 코드나 라이브러리들을 object형태로 변환하고 이 object들을 다시 하나의 실행할 수 있는 큰 덩어리인 이미지로 생성시킨다. 그럼 Jenkins를 꼭 써야 하는가? 본인 시간이 너무 많고, 개별적으로 개발하는 단일 프로젝트인 경우에는 굳이 쓰지 않아도 된다고 생각한다. 하지만 본인의 소중한 시간을 조금이라도 아끼려는 욕망이 있으면 나는 쓰는 것을 추천한다. 이렇게 생각해보자. 내가 없고, 노는.. 2019. 5. 21. DM-Verity 연산 dm-verity 보호는 kernel 내부에서 동작됩니다.부팅시스템이 커널을 시작하기전 루팅 소프트웨어가 시스템을 손상 시키면 해당 접근을 그대로 유지 시켜버립니다.이러한 위험을 줄이기 위해 각제조사들은 각Device에 특정key를 사용하여 커널 검증을 하게 됩니다.일단 해당 Device가 릴리즈가 되면 해당 key는 변경할수 없습니다. 일반적으로 제조사는 해당 key를 사용하여 시큐어부트(secure boot)메커니즘을 사용하여 부트이미지(boot image)들을 서명하고 이를 chain화 시킵니다. 이 서명된 이미지들을 부팅단계에 단계적으로 서명이 일치하는지를 검증 합니다. 이후 커널단계에서 부트로더와 커널 역시도 검증하게 됩니다. 이것을 커널의 무결성 체크라고 합니다. 또한 커널 검증이 완료되면 검.. 2019. 2. 21. 안드로이드 Device측면의 security Layer1 즉 Device 레벨에서의 Security 관련 기능에 대해 알아보자. 부트로더(Bootloader), 복구 이미지(Recovery Image) 마지막으로 검증된 부트(Verified Boot)기능에 대해 설명한다. Verified Boot는 임의의 악성 프로그램들로부터 system partition의 조작을 방어하는것이다.이에 대한 솔루션으로 App와 같은 user-data가 들어있는 user partition을 암호화하는 것이다.이 user partition을 암호화하는 방법에 대해 설명한다. OS 부팅과 설치 제어 installer control :임의의 해커들은 Device에 물리적인 영역에서 접근권한만 얻는다면, filesystem이나 Directory와 같은 상위레벨의접근은 물론이.. 2019. 2. 20. 이전 1 ··· 42 43 44 45 46 47 48 다음