분류 전체보기109 SSL/TLS 핸드셰이크 SSL (Secure Sockets Layer)과 TLS (Transport Layer Security)인터넷에서 데이터 전송을 안전하게 암호화하는 프로토콜TLS는 SSL의 후속 버전이며, 보안이 강화된 프로토콜 동작방식 핸드셰이크과정으로 세션 생성 -> 데이터 전송 -> 세션 종료 핸드셰이크 과정클라이언트 헬로 : 서버로 연결 요청, 사용가능한 암호화 알고리즘, SSL/TLS 버전 전달서버 헬로 : 암호화 방법 선택 후 인증서를 클라이언트에게 전달클라이언트 인증 : 서버의 인증서를 CA에 검증클라이언트 예비 마스터 암호 전달 : "예비 마스터 암호"라고 하는 무작위 바이트 문자열을 하나 더 전송. 예비 마스터 암호는 공개 키로 암호화되어 있으며, 서버가 개인 키로만 해독서버 세션 : 암호 해독 후 세션.. 2025. 1. 15. AWS 리더십 원칙(LP원칙) 최근 솔루션즈 아키텍트 직무를 조사하면서 알게된 AWS 리더십 원칙(Leadership Principle)을 알게되었다. (줄여서 LP 원칙이라고 부른다) AWS가 원하는 인재상이기도 하며 메뉴얼처럼 정해져있다. 솔루션즈 아키텍트 면접을 볼 때 자신의 경력이 해당 항목에 적용되는지 체크리스트처럼 활용하면 좋을 것 같다. 성장해나가면서 나의 부족한 점을 메꿔보는 것도 좋을 것 같다. 현재 나의 실력과 상황에서 나름대로 한줄평을 메모해놓았다. 훗날 다시봐도 똑같은 생각을 하고 있을지 궁금하다. 아래 내용은 AWS 공식 홈페이지에서 가져온 내용이다. 1. 고객 집착 리더는 고객으로부터 시작해서 그에 맞춰 일합니다. 고객의 신뢰를 얻고 유지하기 위해 열정적으로 일합니다. 리더는 경쟁자에게 주의를 기울이지만 고객.. 2023. 8. 17. 테스트와 벤치마크 인터페이스 package main import "fmt" type Attacker interface { Name() string } type DamageTaker interface { DealDamage(attacker Attacker, damage int) } type Player struct { name string } type Monster struct { hp int } func (p *Player) Name() string { return p.name } func (p *Player) Attack(dt DamageTaker) { dt.DealDamage(p, 100) } func (m *Monster) Name() string { return "Monster" } func (m *Monster).. 2023. 7. 18. go 언어 동시성 프로그래밍 [고루틴 사용] //ch24/ex24.1/ex24.1.go package main import ( "fmt" "time" ) func PrintHangul() { hanguls := []rune{'가', '나', '다', '라', '마', '바', '사'} for _, v := range hanguls { time.Sleep(300 * time.Millisecond) fmt.Printf("%c ", v) } } func PrintNumbers() { for i := 1; i 2023. 7. 10. 이전 1 2 3 4 ··· 28 다음