doc2vec이란?


paragraph2vec으로 뉴스 기사 본문과 같은 큰 텍스트 블록에 대하여 vector값으로 변환시키는 것을 말한다.

word2vec에서 확장된 버전이라고 생각하면 쉽다. 


시작하기


코퍼스(Corpus)의 크기, 문서의 개수가 많을수록 좋다.


실습


word2vec 모델에서는 두 개의 중요한 알고리즘이 있었다. (CBOW와 Skip-gram)

마찬가지로 doc2vec 모델에서도 Distribted memory(DM)과 Distributed bag of words(DBOW)가 있다.


doc2vec의 입력은 Labeled Sentence 객체의 iterator(연속)이다.

각 객체는 하나의 문장을 나타내며 단어 목록과 레이블 목록으로 구성된다.



참고문서





저작자 표시 비영리 변경 금지
신고

#세번째  튜터링 영어회화 어플 학습후기 남깁니다. ! :)



지난 주에 레벨테스틀 드.디.어 다시 받았습니다!!!! 

레벨테스트를 받고나면 맨 밑 하단에 3가지 버튼이 나옵니다.

  • 나의 코스 둘러보기
  • 수강권 둘러보기
  • *튜터링 학습 상담 신청


그리고 오늘은 미뤄왔던 "튜터링 학습 상담"을 신청하고 싶었어요! 

왜냐하면, 레벨테스트를 받고 난 뒤 어떻게 공부하면 효율적일지 궁금했거든요!






(왼쪽) 학습 상담 신청 첫화면

(오른쪽) 학습 상담 신청 하단 화면

----------------------------------------------------------


여기서 좀 헷갈렸어요!


튜터링 학습 상담 신청을 누르고나면 010-****-**** 이렇게 써 있는데요.

아무리 해도 상담 받고 싶은 내역 선택하고, 14세 이상을 눌러도 '학습상담신청' 버튼이 눌리지 않는거에요.

ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ


010-****-**** 는 제가 회원가입하면서 넣은 제 번호라고 생각했는데,

 그냥 임의로 저렇게 화면에 표시해줬나봐요..


인터페이스 낚임..ㅎ 

이건 좀  헷갈리지 않게 개선 하면 좋을 것 같아요. 




여튼 이렇게 모든 정보를 입력하고 나면, 위의 캡쳐화면 처럼 버튼이 활성화되고 접수됩니다!


평일에 연락을 준다고하니 이제 기다리면 되겠네요!




그리고 오늘 수업 내용!


오늘은 지난번에 다 못 끝낸 '발음공부'를 이어서 정리했어요!

Marisol 선생님께서 오늘 안계셔서 새로운 선생님에게 발음 수업 마무리 수업을 받았습니다. 


그래서 선택한 'Andrea' 튜터

좋았어요! Marisol 선생님과 다른 매력으로 수업캐리 받음!! 


Andrea 선생님이 말이 약간 빠르긴 했어도 제가 못 알아들을 정돈 아니였거든요!

그리고 Marisol 선생님과 비교하면 수업은 확실하게 Marisol 선생님이 차분하게 잘 맞춰주세요!

대신에 Andrea 선생님은 평가 피드백이 훨씬 꼼꼼합니다.


발음 수업이었는데, 문법도 틀린걸 발견하면 코멘트도 남겨주시고, 수업이 끝나갈 무렵에는 더 연습해야 할 발음들을 체크해주셨어요!


여튼, 항상 제가 수업받고 싶은 튜터님이 수업 중이신건 아니라 다양한 튜터!! 나에게 맞는 선생님을 모아두는게 중요하다는 팁도 좀 얻었어요.

나중엔 저랑 잘 맞을 것 같은 튜터를 추천도 해줬으면 좋겠습니다.




또 아쉬운 점


제가 정말 열심히 쓰다보니까 자꾸 아쉬운 점들이 나와서 또 남깁니다 ㅋㅋㅋㅋㅋㅋㅋㅋㅋ


수업 질적으로나 뭔가 그런게 아니라요..!

인터페이스가 어려워요!!!!!!! 헷갈리고!!!!!!!!! 불편하다고 느껴서......ㅎㅎㅎㅎㅎㅎㅎㅎㅎㅎㅎ


문제는 수업을 다 듣고나서 생겼습니다...

 









수업이 다 끝난 후의 화면에요!


저는 이제 수업이 다 끝났으니까, 

정말 메인화면으로 가고 싶어서 '홈'버튼을 눌렀거든요.




그런데 '홈'버튼을 누르면 발음교정 토픽 메인화면이나오고 (왼쪽사진)

(왼쪽사진)에서 X표를 누르면 다시 (오른쪽 사진) 화면으로 돌아옵니다... 


네 저는 이렇게 정말 메인 화면에 가기 위한 무한반복을 하였어요..


그러다가 찾았어요!




아래 X가아니라 위의 통화 종료버튼을 눌러야 '진짜 홈'으로 돌아간다는 것을요..


홈이 무엇인지 확실히 해주셨으면 좋겠습니다.

보통 유저라면 튜터링을 켰을때의 첫 화면을 '홈'이라고 생각하는데,

갑자기 예상하지 못한 화면이 나오니 좀 당혹스러웠어요.



더 이상했던건




수업이 다 끝나고 다시 토픽에 들어왔을 땐, 이제 '발음교정' (주황색) 버튼을 눌러야해요.


흠.. 전체적으로 굉장히 헷갈리는 구조.........

쓰다보면 익숙해지겠죠 뭐...



오늘은 끝!........





아래 url을 통해서 '튜터링'어플 다운로드 받고, 가입하면
레벨 테스트 1와 원어민과 영어회화 1회를 무료로 제공합니다.  >_<




11월엔 Native 수강권을 200명 한정에 파격 할인 해주는 중이라는 점!

저작자 표시 비영리 변경 금지
신고

K-means Clustering 테스트 자료 


import tensorflow as tf
from tensorflow.contrib.factorization import KMeans
from tensorflow.python.framework import ops


k = 3 #3개의 Cluster로 설정
num_features = 3 #데이터 Feature 2 (카테고리 분류 코드, 제목)

# 데이터 읽어오기
Data_X = []
with open("C:/Users/N3815/Desktop/sample_kmeans_data.txt", 'r') as f:
for line in f.readlines():
dump = []
dump.append(float(line.split()[1].split(":")[1]) )
dump.append(float(line.split()[2].split(":")[1]))
dump.append(float(line.split()[3].split(":")[1]))
Data_X.append(dump)

print(Data_X)

X = tf.placeholder(tf.float32, shape = [None, num_features])

kmeans = KMeans(inputs=X, num_clusters=k, distance_metric='squared_euclidean', use_mini_batch=True)

(all_scores, cluster_idx, scores, cluster_centers_initialized, init_op, train_op) = kmeans.training_graph()
cluster_idx = cluster_idx[0]
avg_distance = tf.reduce_mean(scores)

init = tf.global_variables_initializer()
sess = tf.Session()
sess.run(init)
sess.run(init_op, feed_dict={X: Data_X})

#학습
for i in range(1, 100) :
_, d, idx = sess.run([train_op, avg_distance, cluster_idx], feed_dict={X: Data_X})

#확인
print(idx, d)
for i in range(0,k) :
result = []
for j in range(0, idx.size,1) :
if(idx[j] == i):
result.append(Data_X[j])
print(i, '에 속한 데이터 :', result)

0 1:0.0 2:0.0 3:0.0
1 1:0.1 2:0.1 3:0.1
2 1:0.2 2:0.2 3:0.2
3 1:9.0 2:9.0 3:9.0
4 1:9.1 2:9.1 3:9.1
5 1:9.2 2:9.2 3:9.2
6 1:5.5 2:2.5 3:5.7
7 1:5.2 2:2.5 3:5.3
8 1:5.4 2:5.9 3:5.9
9 1:0.1 2:9.0 3:9.1
10 1:9.1 2:9.2 3:9.3

참고 : http://iamksu.tistory.com/84

저작자 표시 비영리 변경 금지
신고



오늘은 전화영어회화 튜터링 #두번째 사용 학습후기를 가지고 왔습니다.  :)


지난 시간 영어단어를 주고 문장을 만드는 수업을 들었었는데요!

수요일엔 잠을 자려고 눈을 감았는데, 갑자기 수업을 들어야할 것 같아서.. (왜냐하면 지금 안들으면 밀릴 것 같았음ㅋㅋㅋ)


간단하게 '발음 수업'을 들어봤습니다! 

그리고 제가 오늘 인생 튜터를 만났어요!!!!!!!!!!! 






Marisol 이라는 선생님인데요! 현직 국제학교의 선생님으로 일하고 계신분이였어요!

 




이렇게 학습후기가 1,843개나 등록된 선생님이셨어요!


제가 Marisol 선생님을 선택하게 된 이유는

선생님의 수업을 들을려고 일부러 기다렸다가 들었다는 사람의 후기를 보고 선택하게 되었습니다!!





 (이렇게 선생님과의 수업을 미리 예약을 걸 수도 있어요! )


----------------------------------------------------------------------


오늘 발음 공부 시간에 배운 내용들이에요. 


- R/L

- F/P

- th

- V/B


이렇게 4가지를 학습해봤는데요.

너무 어려웠어요....!!


근데, 선생님께서 어떻게 소리를 내는지 앞에서 여러번 무한 반복을 해주셨어요!!


제일 좋았던건 제가 틀리면 'Nope!' 해주시곤 바로바로 잡아주셔서 

' 아 잘못 발음했구나! ' 를 확실히 알아서 너무 좋았어요!!! 






수업을 다 듣고선 선생님께서 본인의 피드백을 이렇게 남겨주셨답니다.


ㅎㅎㅎㅎㅎ... 

th, p, f, v 오늘 배운거 거의 다 연습 많이 하라고 코멘트주셨네요! ㅋㅋㅋ


발음 너무 어려워요.. 그치만 재미있게 수업들었어요! 




----------------------------------------------------------------------



이건 오늘 수업을 듣다가 아쉬운 부분이 있어서 가져온 사진에요.


토픽을 먼저 고르고나서 선생님을 고르게 되는데요. 

이렇게 선생님 사진과 이름만 나오더라구요.. 


튜터의 이름 옆엔 별점을 보여주고 

해당 리스트 1개를 왼쪽이나 오른쪽으로 밀면 상세 정보를 보여주면 더 좋을 것 같아요!


튜터의 상세정보가 궁금하면 다시 닫았다가 튜터 홈으로가서 봐야하는 불편함이 있었거든요.

개선되었으면 좋겠습니다!! 




오늘 영어수업후기 끝!!!!! 





아래 url을 통해서 '튜터링'어플 다운로드 받고, 가입하면
레벨 테스트 1와 원어민과 영어회화 1회를 무료로 제공합니다.  >_<



저작자 표시 비영리 변경 금지
신고
  1. 방실이 2017.11.12 00:35 신고

    항상 노력하는 모습에 왼쪽 무릎을 탁 치고 갑니다

  2. 이운경 2017.11.12 00:43 신고

    회화 향상에 도움되나요..?

    • BlogIcon _Aileen_ _Aileen_ 2017.11.12 00:51 신고

      문법이 부족하면 문법에 대해서 들을 수 있고, 프리토킹을 원하면 또 그렇게 수업하면 되어서요! 자유도가 높은 만큼 재미있게 수업들으니까 자신감이 상승중이에여! 수업을 시작한지 얼마 안됐지만 확실한건 자꾸 쓰려고 노력하니까 빨리 늘 것 같아요☺️

      어플 다운로드 받으면 레벨테스트랑 수업 1회 들을 수 있으니까 한번 해보는게 더 좋을 것같아요!

  3. BlogIcon 란제리 2017.11.14 20:57 신고

    좋은정보 감사합니다 ~~~


경쟁률이 심할 것이라 예상했어서 기대하지 않았는데 튜터링 체험단 7기 당첨 ㅠㅠㅠㅠㅠ


기쁜 마음도 잠시.. 오늘 수업을 듣고나니 공부 열심히 해야겠어요....  

오늘부터 배운 내용들과 부족한 부분을 글로 남겨보려 합니다.  



1. 기존 영어회화와 튜터링 어플 비교


저는 기존에  전화영어를 1회 사용해봤었구요. 튜터링은 친구가 추천해줘서 처음으로 사용해봤어요.

첫 포스팅이라 튜터링 어플을 많이 써보진 못했지만,  현재 횟수는 현재 레벨테스트 1회, 일반 수업 2회로 총 3번 이용해봤어요!


장/단점 내용은 감안해주시고 한 달 써본 결과는 마지막에 포스팅하겠습니다. 



<일반 전화영어 장점과 단점>

  • 장점) 교재가 있어서 이야기의 흐름들이 이어진다.
제가 들었던 전화 영어는 처음에 본인 레벨테스트를하고 레벨에 맞는 교재를 줬어요. (사실 교재대로 따라하는 사람도 있었고, 프리토킹이 재미있으면 프리토킹으로 대화하는 사람도 봤어요!)
교재를 따라가면서 하다보니까, 아무래도 오늘 배울 주제가 무엇인지 알 수 있어서 예습을 하면 그날 영어대화는 좀 더 정돈되게 할 수 있었어요! 

그리고 교재 책을 보면서 전화를 하니, 내가 필기를 하거나 정리하는 것들도 수월한 편이였구요. 

  • 단점) 내가 전화를 걸면 받을지어다!
ㅎㅎㅎㅎ.. 제일 힘들었던 장점이자 단점..
 
저는 직대딩이여서 힘들었어요. 회식하다가 뛰쳐나가서 받은 적도 있었구요. 공중장소에서 받거나 화장실에 있는데 전화오면 하.... 
비상구로 가서 전화도 받아봤는데, 사람들이 거슬려서 도저히 말을 제대로 못하겠더라구요.. 자신감 없어서요.. 

바로 수업 집중도가 확 떨어지는 효과를 보았습니다... 
그러나 자기가 챙겨서 전화를 꼼꼼히 못하는 분들에겐 정말 딱 일 것 같다는 생각도 했어요.


<튜터링 장점과 단점>



튜터 프로필과 클래스 예약 화면 -


  • 장점1)  언제 어디서든 내가 원할 때, 편한하게 수업을 받을 수 있다!! 
제일 제일 좋았던 점!!!!!! 정말 감격스러울 정도로 좋았어요. 거짓말 안치고 ㅋㅋㅋㅋㅋ 
기존 영어회화에서 공공장소 등 사람 많은 곳에서 전화받아보신분들 알거에요..

기존 영어회화는 계속 못하겠다 생각한 이유도 전화시간 고정 때문이였거든요. 
최근엔 직장 +  학교까지 병행되면서 영어랑은 더 멀어졌어요 ㅋㅋㅋ

영어학원에 아침에 일찍 갈 용기도 없고, 저녁 늦겐 학과 일정 때문에 도저히 시간이 안났는데.. 자기가 원할 때 튜터에게 전화하면 되니까 너무 좋았어요.
대신에 원하는 시간이 있으면 미리 예약을 걸 수도 있으니까 짱...ㅠㅠㅠ



- 다양한 주제의 토픽들과 레벨별 조회 화면 -

  • 장점2) 교재가 없지만, 다양한 주제의 토픽으로 원하는 대화와 부족한 부분을 채울 수 있다.
“어플로 한다고?.. 교잰 어떻게 하지.. 어떻게 프리토킹하나?..” 싶었는데, 화면에 주제가 나와요! 보면서 수업을 따라갈 수도 토픽을 통해 주제를 선택해서도 수업이 가능해요!!!
문법이 부족하면 문법과 관련된 토픽을 선택하여 배우면 되고, 발음이 부족하면 발음과 관련된 수업을 들을 수 있다는 게 장점이에요!

뭔가 하나만 파서 1만아는게 아니라 관련된 지식을 함께 배우는 느낌이 좋았어요.

  • 단점) 튜터 채팅창과 수업 내용을 보여주는 인터페이스가 불편하다.
이 부분은 제가 아직 인터페이스에 익숙하지 않아서 일 수도 있고, 인터페이스 자체가 좀 어렵다고 생각되는 부분이기도 해요.
저는 이미 아이패드 프로가 있어서 휴대폰으로는 수업을 켜놓고, 아이패드 프로로는 필기를 합니다. 

근데,  수업을 하다보면 선생님께서 제가 틀린 부분을 채팅창에 ‘이렇게 말하는 거얌~~’ 하고 코멘트를 달아주시는데, 확인하고 바로 교재를 보고 싶을 때가 있거든요. 
튜터와의 채팅창과 교재를 쉽게~편리하게~ 볼 수 있으면 참 좋을 것 같아요.!!  (약간 아쉽 ㅎㅎㅎ) 




일단 개요는 이 정도로 접고... 오늘 수업 내용 정리로..! 


2. 오늘 수업내용

사실 체험단 전에 레벨테스트를 받았었는데, 튜터가 평가안해줘서 레벨을 못받았어요. 
이건 제가 다시 레벨테스트를 받아야겠는데, 대충 뭐 초급-초중급이겠지!!!  라고 생각하고

초급용 짧은 글짓기 : 2가지 단어를 던져주면 문장을 만드는 토픽을 들어봤습니다!


뭔가 전혀 다른 단어 2개가 나올 때는 정말 당황해서 어떻게 문장을 만들어야할까 고민했어요..
내내 에베베했네요..ㅋㅋㅋㅋㅋㅋㅋㅋ

점점 좋아지겠죠?ㅎㅎ

- My mother called me just eating chocolate.
- The bicycle was made up of stone.
- The mouse jumped on to my ears.
- My camera took the picture of the flowers.
- When I drink an alchol, I feel like I’m flying on the sky. 

오늘 배운 문장들입니다!
마지막 시간이 5분정도 남았을땐, 사진 4장을 보여주고 공통된 의미를 갖는 단어를 맞추는 게임을 했어요.
Missing words game 라고 부르나봐요. 

여튼 Kathy가 말이 늘어지는 느낌이긴하지만, 남은 진도가 있기 때문에 이어서 들어야겠어요.
오늘 수업은 알차게 종료!ㅎㅎㅎㅎ




아래 url을 통해서 '튜터링'어플 다운로드 받고, 가입하면
레벨 테스트 1원어민과 영어회화 1회무료로 제공합니다.  >_<





저작자 표시 비영리 변경 금지
신고
  1. 2017.11.08 21:32

    비밀댓글입니다

1. HTTPS와 HTTP

- HTTP : Hypertext Transfer Protocol로 즉 HyperText인 html을 전송하기 위한 통신규약을 의미한다.

- 마지막에 S를 붙인다면 Secure라는 뜻으로 보안이 강화된 통신규약을 의미한다.

- HTTP는 암호화가 되어있지 않은 방법으로 서버에 데이터를 전송하기 때문에 서버와 클라이언트가 서로 주고받는 메시지를 알아내기가 쉽다.

- 그러므로 로그인을 위해서 서버로 비밀번호나 계좌번호 등 중요한 데이터를 서버로 전송할 경우에는 HTTPS 프로토콜을 사용하여 통신하는 것이 중요하다.


2. HTTPS와 SSL

- HTTPS는 SSL 프로토콜을 기반으로 돌아가는 프로토콜 중 하나다.


3. SSL과 TLS

- SSL과 TLS는 같은 뜻으로 말하며 TLS1.0은 SSL3.0을 계승한다. 

- 하지만, TLS라는 이름보단 SSL이라는 이름으로 더 많이 사용되고 있다.


4. SSL이란 무엇일까?

- SSL 인증서란 클라이언트와 서버간의 통신을 제 3자가 보증을 해주는 문서이다.

- 클라이언트가 서버에 접속한 직후에 서버는 클라이언트에게 이 인증서를 전달한다. 그러면 클라이언트는 이 인증서를 보고 신뢰할 수 있는 사람인지 확인을 한 다음에 데이터를 보내는 등 다음 절차를 수행하게 된다.


* SSL를 사용하면 좋은 점

(1) 전달되는 내용이 다른 사람에게 노출되는 것을 막을 수 있다.

(2) 클라이언트가 접속하려는 서버가 신뢰할 수 있는 서버 인지 알 수 있다.

(3) 전달되는 내용이 악의적으로 변경되는 것을 막을 수 있다.


5. SSL에서 사용하는 암호화의 종류

(1) 대칭키

(2) 공개키


5-1. 대칭키

암호를 만드는 행위인 암호화를 할 때 사용하는 일종의 비밀번호를 키(key)라고 한다. 이 키에 따라서 암호화된 결과가 달라지기 때문에 키를 모른다면 암호를 푸는 행위인 복호화도 할 수 없다.


이 중, 대칭키 방식은 는 동일한 키로 암호화와 복호화를 할 수 있는 기법을 말한다.


ex. 암호화를 할 때 1234라는 값을 사용했다면, 복호화를 할 때도 1234를 입력해야 복호화가 완료되는 방식이다.


5-2. 공개키

대칭키 방식은 서로 같은 키를 공유하는 것이라고 위에서 설명했는데, 대칭키의 단점이 있다. 

암호를 주고 받는 사람들 사이에서 이 키(key)로 암호화하라고 사용자에게 전달하는 것이 어렵다는 점이다.

왜냐하면, 중간에 대칭키가 유출된다면 키를 획득한 공격자는 암호의 내용을 복호화하여 무슨 데이터를 전달하려고 했는지 알 수 있기 때문에 HTTPS를 쓰는 이유가 없어진다. 그래서 나온 방식이 바로 공개키 기법이다.


공개키 방식은 대칭키 방식과 다르게 두 개의 키를 가지고 시작한다. 

두 개의 키 중 하나를 비공개키(private key, 개인키/비밀키)라고 부르고 나머지 키를 공개키(public key)라고 말한다. 


비공개키는 자신만이 가지고 있고, 다른 공개키는 타인에게 제공한다. 그럼 내가 발행한 공개키를 받은 타인은 공개키를 이용하여 정보를 암호화하고, 암호화된 정보를 비공개키를 가지고 있는 나에게 다시 전달하면 나는 그 데정보를 복호화하여 확인할 수 있다. 

(클라이언트가 받은 키(key)를 가지고 1234(정보)를 암호화하여 서버에게 !@#$라는 text를 전달 → 서버는 클라이언트가 보낸 !@#$라는 단어를 비공개키로 복호화하여서 1234라는 것을 확인!) 

여기까지가 공개키의 기본 통신 방법이다.


이제 이 공개키 기법을 응용해보자. 

아깐 공개키를 가진 사람이 암호화해서 전달했으나, 이번엔 비밀키를 가진 사람이 비밀키로 암호화해서 공개키와 함께 암호화된 정보(!@#$)를 전송한다.


정보와 공개키를 획득한 사람은 공개키를 이용하여서 암호화된 정보를 복호화한다.

이 과정에서 공개키가 유출된다면 안되겠지만, 데이터를 보호하려는 목적이 아니고 서로의 신원을 확인하기 위한 방식이므로 유출되어도 상관이 없다. 

그러므로 이때, 암호화된 데이터를 공개키로 복호화 할 수 있다는 것은 해당 데이터가 공개키와 쌍을 이루는 비공개키에 의해서 암호화 되었다는 것을 의미한다. 


즉, 공개키가 데이터를 제공한 사람의 신원을 보장해주었다는 것이다.

이것을 우리는 '전자서명'이라고 부른다. 




6. SSL 통신 주고 받는 과정

즉, 위에서 말한 것과 같이 상대방의 공개키를 획득하여 암호화해서 상대방에게 암화된 정보를 제공하고 신원을 확인하는 것이 중요하다.

이러한 절차를 SSL 악수 과정(SSL Handshake)이라고 한다.


<실제 통신 과정>

1단계. Client Hello : 클라이언트가 브라우저나 다른 TCP 통신을 통해서 서버에게 접속한다. 

- 이때 클라이언트는 랜덤한 데이터를 생성하여 서버에게 전송한다. 

- 또 클라이언트가 SSL 통신을 하기 위해 현재 지원가능한 암호화 방식을 서버에게 전덜한다. (자신의 능력을 서버에게 말해주기)


2단계. Server Hello : Client Hello에 대한 응답으로 서버에서 Server Hello를 한다.

- 이번엔 서버에서 생성한 랜덤한 데이터를 클라이언트에게 전송한다.

- 또 이번에는 클라이언트가 지원가능한 암호화 방식에 맞춰 현재 서버에서 제공할 수 있는 가장 안전한 암호화 수단 방식을 클라이언트로 전달한다.

- 또한, 서버가 클라이언트에게 인증서를 전달한다. 


3단계. 클라이언튼 서버가 보내준 인증서가 어떤 CA에 의해서 발급된 것인지 확인하기 위해서 클라이언트에 내장되어있는 CA리스트를 확인한다.

CA리스트에 없는 인증서라면 사용자에게 경고의 메시지를 띄운다.

이때, 인증서가 어떠한 CA에 의해서 발급된 것인지 확인하기 위해서 클라이언트에 내장된 CA의 공개키를 이용하여서 복호화를 한다.

복호화를 정상적으로 성공했다면, 해당 인증서는 CA의 개인키로 암호화 한 문서임이 암시적으로 보증되었고 인증서를 통해서 서버를 믿게 된다. 


클라이언트는 1단계를 통해서 받은 서버의 랜덤 데이터와 클라이언트가 생성한 랜덤 데이터를 조합하여서 pre master secret라는 키를 생성한다.

이 키는 뒤에 살펴볼 세션 단계에서 데이터를 주고 받을 때 사용된다.

이 pre mster secret 키는 3자에게 노출되어선 절대안되는 키다.


이때, pre master secret 키를 다시 서버로 전송을 하는데, 이때 공개키 방식을 이용하여 또 전달한다.


4단계. 서버는 클라이언트가 전송한 pre master secret 값을 자신의 비공개키로 복호화를 한다.

이로서 서버와 클라이언트 모두 pre mater secret 값을 공유하게 되었고, 서버와 클라이언트는 일련의 과정을 거쳐 pre matser secret 값을 master secret 값으로 만든다. 

master secret은 session key를 생성하는데, 이 session key를 이용하여서 대칭키 방식으로 암호화하여 주고 받는다. 



참고 문서


저작자 표시 비영리 변경 금지
신고

1. Java 설치 여부 확인

window key + R > cmd 입력

command 창에 cmd 입력 > java 라고 입력하면?


2. Java down (java 1.8 download)

http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html


3. 환경변수 설정

http://mirwebma.tistory.com/149


4. 재확인

cmd > java 입력하면 명령어에 대한 내용이 출력됨


5. 이클립스 다운로드

http://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/juno/SR2/eclipse-jee-juno-SR2-win32-x86_64.zip

설치 다하고 나면 .exe 파일로 실행하고 workspace (이클립스에서 생성될 프로젝트들이 있는 root 폴더) 설정해주고 확인하면 끝


6. Apache tomcat 다운로드

tomcat 7 : http://tomcat.apache.org/download-70.cgi


7. 톰캣 설정

window > show view > Server > 신규로 생성하기 클릭 

톰캣 경로는 6번에서 설치한 tomcat 경로로 설정 


8. Dynamic Web project 만들기

Project Exploer > 마우스 오른쪽 > New > Dynamic Web project > 프로젝트명 입력하고 다음 (이때, tomcat 설치가 되어있으면 Target runtime에 잡혀있음)

저작자 표시 비영리 변경 금지
신고

크론탭 사용법


등록된 크론탭 리스트 확인하기

crontab -l


크론탭 수정하기

crontab -e




1. 크론탭 기본 형식 예제

ex) 10 0 * * * find /data/ -type f -mtime +7 -exec rm -rf {} \; >> /dev/null


2. 크론탭 시간 설정 방법

* * * * * 수행할 명령어 ┬ ┬ ┬ ┬ ┬ │ │ │ │ │ │ │ │ │ │ │ │ │ │ └───────── 요일 (0 - 6) (0:일요일, 1:월요일, 2:화요일, …, 6:토요일) │ │ │ └───────── 월 (1 - 12) │ │ └───────── 일 (1 - 31) │ └───────── 시 (0 - 23) └───────── 분 (0 - 59)



참고 문서


저작자 표시 비영리 변경 금지
신고

[Linux] yum 명령어 정리


- telnet 설치

yum -y install telnet


- 설치된 패키지 확인

yum list installed


- 패키지 검색

yum info 패키지명


- 패키지 업데이트

yum update 패키지명


- 패키지 삭제

yum remove 패키지명



저작자 표시 비영리 변경 금지
신고


아파치 버전 확인

$httpd -v


리눅스 서버 OS 버전 확인

grep . /etc/*-release


서버 IP 정보 확인

ifconfig


저작자 표시 비영리 변경 금지
신고

+ Recent posts

티스토리 툴바