최근에는 학교 시험을 많이 쳐서 블로그에 글을 올리지 못했다. 여름방학 목표 글에서도 썼지만 이번 학기는 배운 게 정말 많은 학기였다. 

어떤 과목을 들었고, 어떤 것을 배웠는지, 어떤 것을 느꼈는지를 전공 위주로 간단하게 정리해보려고 한다.


현대대수학 1

  • 수학으로 뭘 하려면 근본이 중요한 것 같고, 그런 면에서 더욱 중요했던 과목
  • 아는 내용이 많아서, 특히 군론은 선형대수학 2와 겹치는 부분이 많아서 새로 배운 것은 적었음
  • Burnside's Lemma를 쓰는 문제가 나왔는데, 어이없는 실수를 해서 틀렸다. 솔직히 매우 부끄럽다 ㅋㅋ
  • 현대대수학 2에서는 진짜 많은 것을 배울 수 있을 것 같아서 기대를 하고 있다

수치선형대수

  • 처음에는 '수치'란 이름이 붙어서 오차분석에 더 비중을 둔 과목일 줄 알았다
  • 실제로는 선형대수학 알고리즘을 다루는 과목이었다. 어쨌든 재미는 있었음
  • 배우는 건 정말 많은데, 나름 최근에 나온 이론도 많아서 그런지 100% 이해를 한 이론은 적다
  • 아쉬운 면도 있지만 학부 3학년 과목에서 모든 내용을 다루기엔 무리가 있으니 이해가 된다
  • Gaussian Elimination, LU Decomposition, Cholesky Decomposition, QR Decomposition, Singular Value Decomposition
  • Least-Square Approximation과 그 계산 방법
  • Givens Rotation과 Householder Reflection을 활용한 QR Decomposition의 계산
  • 행렬의 Eigenvalue를 계산하는 알고리즘들 (QR Iteration, Single/Double Shift Francis Algorithm 등)
  • Symmetric 행렬의 Eigenvalue를 계산하는 알고리즘들
  • Iterative Methods for solving $Ax = b$ (Jacobi, Gauss-Seidel, SOR, Steepest Descent, Conjugate Gradient)
  • Arnoldi Decomposition과 이를 활용한 다양한 알고리즘
  • 이 글을 작성하는데 많은 도움을 준 과목이다
  • 과제가 많았는데 그래도 나름 유익했고, 시험은 거의 선형대수학으로 나와서 아쉬웠다

암호론

  • 정수론을 매우 좋아하는 만큼 정수론을 써먹는 방법을 알고 싶어서 들어왔다
  • 근데 정작 요즘 메타는 정수론에서 벗어난 것 같다. 하지만 여전히 엄청 재밌는 수학이 많이 쓰이는 것 같다
  • 학문 자체가 진짜 재밌어서 (여름방학 계획에서 말했듯이) 더욱 깊은 공부를 하려고 한다
  • 그래서 암호학 분야 CTF도 시작했고, 논문도 몇 개 읽으려고 한다. 이에 대해서는 아래에서 더 말한다
  • 수업에서는 암호론 분야 전반을 다뤘다. 블록암호, RSA, 전자서명, 비밀공유, 양자내성, 동형암호 및 최신동향을 다 다룬다
  • 내용을 배우고 찾아보면서 진짜 신기한 것들을 많이 배웠는데, 이런 것들은 한 번 블로그에 정리를 할 것 같다
  • 3학년 1학기가 되면 가능하면 암호론 랩에 가고 싶다는 게 지금 생각. 웬만하면 안 바뀔 것 같다

해석개론 및 연습 1

  • 수학 근본을 챙기기 위한 과목이다
  • 교수님이 수업을 굉장히 열정적으로 하셔서 재밌게 들을 수 있었다
  • 해석개론 및 연습 2를 가면 더욱 깊이있는 내용을 배울 수 있을 것 같아서 기대가 된다

양자 컴퓨팅 및 정보의 기초

  • 생각보다 암호론과의 시너지가 잘 맞는 과목이었다. 함께 들을 수 있어서 좋았다
  • 암호론에서 '양자컴이 나오면 RSA가 깨진다, 블록암호 길이도 2배 늘려야 한다'라는 내용을 배웠다
  • 그 이유를 이 수업에서 전부 배울 수 있었다 (Shor Algorithm, Grover Algorithm)
  • 물리 근본이 없어서 걱정을 많이 했는데, 좋은 친구들이 도와줘서 어떻게 어떻게 잘 된 것 같다

 

종강 이후로는 바킹독님의 추천을 받아서 CryptoHack이라는 사이트를 많이 풀었고, 비슷한 사이트인 id0-rsa.pub도 풀고 있다.



문제를 풀다가 내 블록암호에 대한 지식이 어마어마하게 얕다는 것을 많이 느껴서, 이쪽으로 공부를 잠깐 할 생각이다.

읽을 논문도 결정했는데, 우선 ROCA Vulnerability와 Bleichenbacher 공격에 대해서 제대로 읽어보려고 한다.

저번에 Lattice에 대한 지식이 전무해서 읽지 못했던 RSA에 대한 Survey Paper의 일부분도 읽고 정리할 것 같다.

암호론 시험공부를 하면서 동형암호 HEAAN에 대한 논문/자료도 열심히 읽었는데, 이것도 제대로 읽으려고 한다.

가능할지는 모르겠는데, 예전 노트북에 Linux를 깔아서 HEAAN은 직접 프로그래밍을 하면서 익숙해지려고 한다. 

그리고 최근에 올렸던 특성다항식의 빠른 계산을 백준 문제로 만들어서 올릴 계획을 세우고 있다.


마지막으로 2학기에 듣고 싶은 과목을 소개한다. 이대로 들을 수 있으면 진짜 좋겠다 ㅋㅋ


해석개론 및 연습 2, 현대대수학 2 : 수학 근본 챙기는 과목, 못 들을 이유가 없다

수치해석개론, 최적화의 수학적 이론 및 계산, 대수적 코딩이론 (택 2) : 수학 응용 챙기는 과목

컴퓨터 프로그래밍, 자료구조, 알고리즘 (택 2) : 컴공 전공 챙기는 과목, 복수전공하니까 이제 들을 수 있을거라 믿는다

계산수론 (청강) : 이미 좋아하는 분야인만큼, 꼭 들어보고 싶다. 랩을 가는 것에도 도움이 되지 않을까?


저렇게 들으면 21학점이 나온다. 근데 1학기 학점은 잘 나올까? ㅋㅋ


UPD: 1학기 학점은 잘 나왔고, 암호학 리딩은 많이 못했다. 방학 때 너무 놀았음 ㅋㅅㅋ

'미래 계획 및 근황' 카테고리의 다른 글

1월 정산 + 2월 계획 + 1학기 수강신청  (1) 2021.02.01
2020 : A Retrospective  (9) 2020.12.27
여름방학 목표  (0) 2020.06.19
겨울방학 목표 정리  (4) 2019.11.29
대충 최근에 한 것 모음  (0) 2019.10.14