목록전체 (47)
백인감자
메시지 인증은 메시지에 대한 무결성과 누가 메시지를 보냈는지에 대한 인증을 하기 위해서 사용된다.(발신자 신원 확인 + 부인방지) 보안요구사항을 고려하여 세 가지 방식이 있다.1. 메시지 암호화2. MAC(메시지 인증 코드)3. hash function 메시지 암호화 메시지 암호화 자체만으로 인증 수단이 된다. 대칭키 암호를 사용할 경우 기밀성이 보장된다. 공개키 암호를 기밀성을 보장할 수 없다. (누구나 공개키를 알기 때문에) 더군다나 공개키 암호는 속도도 느려서 주로 대칭키 암호를 많이 사용한다고 한다. MAC (메시지 인증 코드, Message Authentication Code) MAC 특징 MAC 은 암호학적 checksum 이라고도 불린다. 가변길이 메시지 M 을 비밀 키 K 를 통해 압축하여..
이슈사항 : validation set 이라는 것은 test set 하기 전에 예측해보는 그런 느낌이다, overfitting 을 막기 위해 사용된다.Test set 은 가장 마지막에 사용하는거라서 학습용으로 쓰면 안됨. 그리고 미지의 데이터 전체를 잘 나타내야함validation set 은 test set 을 잘 표현할 수 있어야한다. Supervised Learning (지도 학습)input, output(label) 의 쌍들에 대한 정보를 알고 있는 상태에서 학습시킨다.input 에 대한 정보만 알고 있는 상태에서 학습 시키는 것을 Unsupervised Learning (자율 학습) 이라고 한다. 용어regression : 회귀 , 두 변수 x, y 의 관계를 표현하는 적합한 식을 의미한다.Ock..
++) 18.08.21 텐서플로우 모델에서 입력데이터로 이미지가 많이 사용되기 때문애 opencv 환경도 같이 설치하고자 할 때는 아래와 같이 한다.현재 포스팅 자료 기준에서는 파이썬 버전이 3.53 이다. 혹시나 본인의 환경 확인하고싶으면 anaconda prompt 에서activate tensorflow 한 다음 python -V 명령어를 입력하면 가상환경에서의 파이썬 버전이 확인가능하다. 그 이후 과정은 기존의 윈도우 환경에서 opencv 파일을 설치하는 것과 동일하다.저번에 포스팅 해 놓은 게시글을 참고하면 된다.http://potatoggg.tistory.com/196 참고: https://tensorflowkorea.gitbooks.io/tensorflow-kr/content/g3doc/get..
용어tampering - 변조forgery - 위조private key == secret key 비밀 키distribution - 배포nonce - 인증 등을 목적으로 일시적으로 사용하는 값discrete logarithms - 이산 로그(이산대수) Key management공개키 암호 방식은 키 분배 문제를 해결해준다.2종류로 나눠보면 아래와 같다. 1. 공개키 분배 2. 공개키 암호를 이용한 비밀키 분배 공개키 분배 공개키 분배는 4가지 사용측면으로 고려된다.public announcement(게시판 같은곳에 공개 키 올림)publicly available directory(공적으로 이용가능한 디렉토리에 올리는 방법)public-key authority(권위가 있는 기관(믿을만한) 에서 관리)publ..
Deap 라이브러리 이용한 griewank 함수 예제를 실행시키려한다.http://deap.readthedocs.io/en/master/api/benchmarks.html#deap.benchmarks.griewank 그냥 파이썬의 환경에서는 실행이 되지 않기 때문에 아래의 라이브러리들을 설치해야한다. 1. Deap 라이브러리 설치Python27\Scripts 경로에서 easy_install deap 명령어를 통해 라이브러리를 설치한다. 2. matplotlib 설치 - 그래프를 그리기 위해 필요한 라이브러리 https://sourceforge.net/projects/matplotlib/files/matplotlib/ 에 들어가서 본인의 운영체제에 맞게 설치한다.(32,64bit 따라 다름) 작성기준 환경..
Solving Problems by Searching frontier(프론티어) : 확장되어지기를 기다리는 leaf node 들의 집합을 일컫는 말, open list 라고도 불린다. Tree-Search 방식(가장 일반적인 방식)을 이용해보자.위의 그림의 경우 (b) 의 기준에서 현재 Arad 에 있고 이 상태에서의 frontier 는 Arad 의 child nodes(3개)가 된다.(c) 의 경우 Sibiu 가 선택되었으므로 frontier에서 Sibiu 를 제거하고 그 child nodes(4개) 가 frontier 로 추가 된다.frontier 는 Timisoara, Zerind, Arad, Fagaras, Oradea, Rimnicu Vilcea 로 총 6개가 된다. 만약 다음 state 로 A..
Shift Cipher(Ceasar cipher)Julius Caesar’s cryptosystem 이라서 caesar cipher 라고도 불린다.key 값에 맞게 알파벳의 위치를 이동시켜 암호화 시키는 방식이다.ex. key= 3 이면 a ->D , b->E, ... 와 같은 방식으로 된다.*일반적으로 plaintext(평문) 는 소문자로 표기되고 ciphertext(암호문) 는 대문자로 표기된다. plaintext 가 대문자로 구성되어있다면 아래와 같이 하면 된다. (65는 'A' 의 아스키코드이다.)Enc: y=65 + (x -65 +κ) (mod 26)Dec: x=65 + (y -65 -κ) (mod 26) plaintext 가 소문자로 구성되어있다면 아래와 같이 하면 된다.(97은 'a' 의 아..
Euclidean 알고리즘 이란 유클리드 호제법(- 互除法, Euclidean algorithm)은 2개의 자연수 또는 정식(整式)의 최대공약수를 구하는 알고리즘의 하나이다. 호제법이란 말은 두 수가 서로(互) 상대방 수를 나누어(除)서 결국 원하는 수를 얻는 알고리즘을 나타낸다. 2개의 자연수(또는 정식) a, b에 대해서 a를 b로 나눈 나머지를 r이라 하면(단, a>b), a와 b의 최대공약수는 b와 r의 최대공약수와 같다. 이 성질에 따라, b를 r로 나눈 나머지 r'를 구하고, 다시 r을 r'로 나눈 나머지를 구하는 과정을 반복하여 나머지가 0이 되었을 때 나누는 수가 a와 b의 최대공약수이다. ---출처 : 위키백과 Sage 에서의 구현 Euclidean 알고리즘은 워낙 유명해서 구글링을 통해..
windows 사용자들이 Sage 를 사용하기 위한 환경구축 방법을 소개한다. 1. 가상머신인 virtual box 를 설치한다.linux 환경을 사용해본 사람들은 이미 vmware 가 설치되어 있겠지만 sage 공식페이지에서는 virtual box 를 사용하는 것을 추천하였다.https://www.virtualbox.org 에 들어가면 최신버전인 5.1 이 있을것인데 시도해본 결과 최신버전의 virtual box 에서 Sage 가상 이미지 파일을import 하여 실행시키는데 알 수 없는 오류가 발생해서 구글링 해보니 이전 버전으로 구동해보라 해서https://www.virtualbox.org/wiki/Download_Old_Builds_5_0 에서 5.0 버전을 설치하니깐 정상적으로 동작하였다. win..
https://www.draw.io 시스템의 알고리즘을 표현하기 위해 웹에서 flow chart 등을 그릴 때 유용한 도구 이다.google drive 나 onedrive 와도 연동이 되고 share 기능을 통해서 협업도 가능하기 때문에 편리한 것 같다. 화면 좌측에 있는 tool box 를 이용하여 원하는 모양의 box 를 drag & drop 을 통해 가져다 쓰고 관계를 표시하는 등 작업을 할 수 있다.처음 사용하는 사람들도 직관적으로 사용하기 쉽게 만들어놔서 자세한 설명은 생략한다. 원하는 파일이 다 만들어 지면 File 을 눌러서 Make a Copy 를 누르면 되고 현재 파일을 다른 사람과 공유하고 싶으면 Share 를 통해서초대 메일을 보낼 수 있다. Make a Copy를 하고 나면 원하는 ..