CryptoCitizen
10,000+ Views

블록체인 원리에 대한 가장 정확한 입문 글


다른 블록체인 입문글들이 블록체인의 알고리듬적 원리에 대해 너무 피상적으로만 다루거나 먼 비유(논리적으로 정확히지 않은 비유)를 통하여 설명하는 반면, 이 글은 Computer Science 전공자가 보아도 참 "정확하게" 원리를 묘사한 글이라는 생각이 듭니다. 전공자가 보아도 손색이 없으면서도, 일정 이상의 수학적 사고 능력을 가진 사람이라면 일반인들도 블록체인이 무엇이며, 왜 필요한지를 어느정도 깨달을 수 있게 해 줍니다.

by Mohit Mamoria
2 Comments
Suggested
Recent
가장 쉽고 정확하게 설명해주는 글이라고 생각해요 번역하고 싶을 정도...
잘 보고 갑니다. 맞팔로우로 해주시면 감사하곘습니다 ^^
Cards you may also be interested in
메인보드 확인하는 방법 중 가장 간단한 방법
인터넷 드라이버가 사라졌을 때 가장 먼저 해야되는 것이 무엇일까요? 바로 메인보드사 홈페이지에 가서 메인보드 인터넷 드라이버를 재설치가 1순위 입니다.하지만  인터넷 드라이버 설치하기전 자기집 컴퓨터 메인보드가 어떤 제조사인지 먼저 아셔야 되는데 컴퓨터 본체를 뜯어서 보는 방법도 있고  다른 프로그램을 사용하는 방법도 있지만 이런거 없이 명령창으로 확인하는 방법을 보겠습니다. 먼저 CMD창인 명령 프롬프트를. 윈도우10 기준으로 윈도우 아이콘 옆에 돋보기 아이콘을 눌러주신다음에 " CMD "를 입력하셔서 명령 프롬프트를 실행해주세요. 그러면 이런 명령 프롬프트 창이 나오실텐데 유저 이름 옆에 " wmic baseboard get product " 이라고 적어주시고 엔터를 눌러주시면 Product가 나오면서 밑에 메인보드 모델명이 나오게 됩니다. 이제 그걸 보시고 스마트폰으로 네이버나 다나와에 들어가셔서 검색을 해보시면 되겠습니다. 이렇게 검색하시면 위 사진처럼 모델명과 제조사 이름이 나오게 됩니다. 이제 모델명 토대로 인터넷 드라이버를 회사 사이트에 들어가 설치해주시고 아니면 메인보드 자체에 문제가 있다면 이 제조사에 문의를 해보시면 되겠습니다. https://blog.naver.com/007overmen/221483218456
초기사업비용 줄이는 세가지
일반적인 직장인분들은 사업이라는 것은 아무나 하는것이 아니라는 말을 많이 하십니다. 그만큼 사업이라는 것은 준비를 하고 책임이 따르는 것이기 때문인데요. 이러한 책임과 준비 정보들을 준비하면서 많이 성장할수 있다는 것도 사업의 장점이라고 할수 있겠죠. 성공적인 사업을 위해서는 비용을 줄이고, 정확하게 사업을 위해서 비용을 쓸수있어야 하는데요. 오늘은 초기사업자들이 완벽하게 비용을 아끼는 법에 대해서 알아보도록 합시다. 사업자들이 가장 크게 비용이 드는 경우는 무엇일까?월마다 비용이 가장 많이 나가는 것은 사무실 비용이라고 합니다. 일반적인 개인사무실을 구하려면 보증금 1000만원에 월50~60만원정도 예상을 해야 하는데, 이것과 더불어 관리비와 다양한 비용이 발생하게 됩니다. 사업을 위해서도 쓸돈이 많은데, 이런 시설 자체에 드는 비용만 해도 아찔할수있겠죠? 또 세무관련 비용이 있는데요. 사업자들은 사업을 위해서 쓰는 비용을 비용처리라는 명목으로 아낄수있습니다. 근데 세무관련 비용을 처리해줄수 있는 것이 기장장부를 작성하는 것인데, 이게 일반적인 사람들은 쉽지가 않답니다. 월 10만원정도로 세무사 비용을 써야하는 데 초기사업자들에게는 만만치가 않죠. 거기에 식대나 식비 4대보험에 들어가는 비용까지 버는 돈에 비해서 낼 돈은 굉장히 많은거같아요. 이런 다양한 비용들 어떻게 하면 아낄수 있을까요? 가장 먼저 사무실 비용을 줄이는 방법~ 저는 소호사무실을 입주를 한답니다. 월 10~50만원사이 관리비는 별도로 내지 않아도 되는데, 다양한 부가시설은 무료로 이용할수있답니다. 사무실공간/카페테리아/음료/팩스/프린트까지 부대비용이라는 명목으로 나갈수 있는 비용을 현저히 줄일수 있기 때문에 굉장히 추천드립니다. 거기에 행사를 통해서 명함이나 로고디자인 법무세무비용까지도 무료로 만나보실 수 있답니다. 하우투비즈 센터는 여의도 국회의사당역에서 5분거리에 있어요. 다양한 소호사무실에 들려봤는데, 여기 직원분들도 친절하고 부대시설도 너무 깨끗해서 2년간 입주해 있었답니다. 중요한 행사가 있을때는 회의실도 쓸수있었고요. 다양한 네트워킹행사가 진행되어서 서로 협업할수있는 기회도 많았답니다. 거기에 세무사를 쓰는 비용은 어떻게 아낄수 있을까요? 우리가 사업을 위해서 물건을 사고, 이 영수증을 모으는 등으로 예전에 많이 진행했었는데, 이제는 사업자용 카드나 현금영수증 등으로 굳이 영수증을 따로 보관하지 않아도 되었답니다. 대신에 홈텍스에 이 정도로 기입해두고 이 부분은 구분해서 기장을 정리해서 만들어야하는데요. 세무사가 하는일이 이런것이랍니다. 세무기장을 만들게 되는데, 이 비용이 월10만원안팎이라는 것이죠. 사실 초기사업자는 비용은 많이 들지만, 기장을 할 항목이 많지 않답니다.하지만 비용은 항목의 수만큼 비례하지는 않아서 고정비용이 자꾸 나가게 됩니다. 이런기장을 직접만들수있는 방법이 없을까? 해서 나오게 된 어플리케이션이 있는데, 머니핀이라고 합니다. 이 머니핀 어플을 사용하면, 기장을 정리해서 세무사를 쓸때의 비용보다 1/10까지 줄일수 있기 때문에 부담을 줄이기 위해서라도 추천드립니다. 거기에 쓰는법도 간단하고 월수입과 지출등을 파악하기 편해서 매우 추천드리는 어플입니다. 또 월수입과 지출 카드등 다양한 부분을 파악하는게 중요한데, 뱅크샐러드같은 자산관리 어플을 쓰는것도 좋답니다. 성공적인 사업을 위해서는 비용을 꼭 줄여주세요.
문과생과 우리 아부지를 위한 블록체인 이해하기 1편
최근에 블록체인에 대한 관심이 엄청 높아가고 있더라구요! 저도 맨날 축구 콘텐츠 보고 톡으로 수다 떨려고 빙글 오다가, @HackShipGe 님이 작성하신 코인 핵쉽게 정리해dream 시리즈를 보고 관심이 생겨서 엄청 공부하고 있답니다! 그러다가 우연히 이번 주에 아버지와 이야기하다가 블록체인에 대하여 이야기를 하게 되었어요. 아버지는 엄청 궁금해하시는데 아무래도 그 세대(이제..60대..ㅠㅠ아부지,,)이신 분들이 이해하기는 쉽지 않으신 거 같아서 하나하나 설명드렸어유 그렇게 설명드리고 집에 오다가 아부지랑 이야기한 것도 정리해서 추억 쌓을 겸 문과생 분들이나 (저도 잘 모르지만) 기술에 대한 빠삭한 이해는 아니더라도, 그게 도대체 뭔지, 근본이 뭔지 알고 싶다는 분들도 계실 거 같아서 요렇게 빙글에 한 번 남겨봐요! (가끔 축구톡에서 저 보시고, 고딩이냐고 하시는 분들 있는데, 이..이래뵈도 성인이에요...헤헤) @HackShipGe 님만큼 재밌게 쓰진 못하지만, 그냥 하나하나 아부지와 했던 이야기를 적어볼게용ㅋㅋㅋㅋㅋ 재밌으시면 좋아요, 댓글 해주시면 시리즈로 한 번 써볼까도 생각해용ㅋㅋㅋ 제 글을 보시기 전에 @HackShipGe 님의 아래 글을 보시면 더 이해가 쉬우실 거에용! (근데 글을 진짜 재밌게 잘 쓰시더라구요...부럽..) https://www.vingle.net/posts/2333573 https://www.vingle.net/posts/2337689 https://www.vingle.net/posts/2342528 https://www.vingle.net/posts/2355210 ----------------------------------------------------------------------------------------------------------------- [등장인물 소개] 1. 울 아부지 : 60대 / 전공은 이공계 / 관심과 열정은 많으신데, 잘 모르심..ㅠㅠ 2. 나 : 고딩은 아님. 블록체인 공부가 재밌고 흥미진진한 축덕 빙글러 히히 (끝나고 브라질 vs 크로아티아 전 보러 갈거임!!) / 별명 제라드 (잘해서 X, 좋아함 ㅇㅇ) 아부지 : 라드야, 너 블록체인 아냐? 제라드 : 저도 요즘 잼께 공부하고 있는데, 그냥 개념 정도는 알죠. 갑자기 왜요? 아부지 : 아니, 요즘 보는데 그게 중요하다고는 하는데 뭔지를 모르겠어서. 알면 좀 말해봐 (요 사이에 많은 대화가 있었지만, 다 쓰기 귀찮...) 제라드 : 음 그게 말하자면 어떤 거냐면요.. 블록체인을 말하자면.. 분산 저장하여 신뢰성과 보안성이 높은 데이터 베이스....인데 어려우니까..그냥... 저런 거 몰라도 되요 아부지...그냥 믿을 수 있게, 안전하게 정보를 저장하는 기술 이라고 생각하시면 됩니다. 아부지: 그..그래. 그런데 의사 양반.. 아니 아들 양반...그게 왜 이렇게 붐이라는 거요? 블록체인이 가지는 의미는 무엇이길래, 이렇게 붐인가? 제라드 : 그게.. 아 여기서부터는 좀 예를 들어서 말씀드릴게유 아버지.. 그게 정보의 신뢰성을 통해 새로운 가치들을 창출할 수 있어요. 즉, 디지털 데이터를 신뢰할 수 있게 만들어주는 기술인데.. 기존 체계에서 높은 보안을 가지는 방법은 중앙집권화이었어요. (한 사람이 정보를 모두 독점하고, 그 사람이 철통 보안을 가지는 것 / 예 : 은행의 금융정보 관리) 근데, 블록체인은 반대로 공개하는 방법을 통해 더 저렴하고 효율적으로 신뢰/보안성을 높여요 알..알겠어요.. 어려우니까 위에 건 다시 이..이즈시고, 아래 예시만 보면 됩니다... 아빠 그니까, 제 말은,, 모든 것을 공개하자는 블록체인의 시스템이 중앙집권화된 시스템보다 더 저렴/효율적이고 신뢰성이 높다 는 거 에요.다음 예시를 한 번 보세요. [상황 1] : 로맨티스트 성우는 여자친구에게 줄 2억짜리 프로포즈 반지를 샀다. : 도난 당할까봐 걱정한 성우는 그 반지를 뿅뿅은행 가장 깊숙한 벙커 안 금고에 보관하였다. : 뿅뿅은행은 지금까지 한 번도 강도를 당한 적 없는 세계 최고의 보안 은행이었다. : 그런데, 오션스 일레븐이 나타나 뿅뿅은행을 털고, 그 반지를 훔쳐갔다. : 한 번도 털리지 않은 은행이었지만, 도둑들의 솜씨가 너무나도 훌륭했다. : 성우는 그렇게 반지를 잃어버리고, 영원히 찾을 수 없었고 여자친구에게 차이게 되었다...... [상황 2] : 몇 년뒤, 성우는 다른 여자친구를 만나게 되고, 프로포즈를 위하여 20억짜리 반지를 샀다. : 세계에서 가장 안전한 은행의 금고에 맡겼는데도 반지를 도난당한 적이 있는 성우는 너무나 불안했다. : 그래서 다른 방법을 고민하고 생각하기 시작했다. : 그 방법으로 선우는 온 나라와 도시에, “이렇게 생긴 이 반지는 바로 김성우, 저의 반지입니다!” 라는 내용의 포스터를 붙였고, 모든 사람들이 그 반지가 선우 것이라는 것을 알게 되었다. : 그리고 그 반지를 나라 한가운데, 모든 사람들이 볼 수 있는 가장 높은 언덕 위에 두었다. : 이번에도 오션스 일레븐은 선우의 반지를 훔치려고 했지만 그럴 수가 없었다. : 언덕 위에 올라가서 반지를 가저가려고 하면, 사람들이 “그거 성우 반지인데, 당신 누구인데 왜 가져가세요?” 라고 물어 봤기 때문이다. : 한 두명이었다면 “아, 제가 성우입니다" 또는 “저거 성우 반지 아니고 제 반지에요"라고 거짓말 할 수 있었겠지만, 온 나라와 도시의 사람들이 알고 있었기 때문에 통하지 않았다. : 또 훔친다고 하더라도, 모든 사람들이 그 반지가 성우 반지인 것을 알기에 장물로 거래할 수도 없었다. : 그렇게 성우는 CCTV나 보안 요원 1명 없이, 아주 안전한 방법으로 이번에는 반지를 지켜냈고, 여자친구와 결혼하여 행복하게 살았다. 정보를 전체에게 공유한다는 것이 얼마나 손 쉽고, 빠르게 정보의 신뢰성과 보안을 높이는 것인지 이해하는데 도움이 되었나용? 중앙 집권화된 권력 또는 기관(은행)이 아무리 높은 수준의 보안을 가지고 신뢰성을 보장하려고 한다 하더라도 그것보다 더 유능한 도둑이 들면 한 방에 바로 털리고, 그 도둑을 막기 위한 과정에서 많은 비용이 듬(은행 유지 비용, 금고 구매 비용, 보안 요원 인건비 등등) 그러나 간단하게, 모든 일들을 아주 많은 사람들에게 공개해버린다면? 모두가 그 사실을 알게 되기에 도둑이 나타나더라도 전혀 의미가 없는 거짓말이 되어버리고, 쉽게 진실은 지켜집니다. 그것도 아주 효과적이고, 싸고, 빠르게요! 이때 듣고 계시던 아부지의 질문 아버지 : 야 이 녀석아, 성우의 반지인 걸 알고 있지만, 거짓말하는 사람들이 있으면 어떡해? 그럼 결국 의미없잖아!! 읭..? 음...저도 헷갈...릴 뻔 했지만요 그건.. (사실 아주 매서웠어요..아주 매서운 갱킹이었어요) 이 부분은 충분히 많은 사람들에게 정보를 공개한다면 쉽게 방지할 수 있는 있어요. 10명에게만 알리면, 도둑들이 그 10명만 거짓말하도록 설득하면 되지만, 100만명이 알고 있다면? 결국 도둑들이 100만명을 한 명 한 명 찾아다니며 설득하는 것이 현실적으로 불가능하기에, 그리고 100만명 중 과반수가 모두 거짓말하는 것은 현실적으로 불가능하기에! 더욱 많은 사람들이 알고 있을수록 더 안전하고 신뢰성있는 정보가 되는 것이죠! (이것을 기술용어로 분산화, Decentralized Model이라고 부릅니다!) (빙글러 분들은 위의 @HackShipGe 님의 포스트 참고) - 아부지한테는 못보여드림 ㅠㅠ 아쉬뷔ㅠㅠ 여기서 아부지의 질문 2 아부지 : 음, 신뢰성을 보장해주기에 의미있다는 것을 알겠어. 그런데 그게 그래서 어떻게 세상의 발전에 도움이 되고 좋다는거야? 이건 조금 더 이해하기 쉬운 부분인데요 아부지 이건 뭐 블록체인에 대하여 생각하실 필요도 없이 그냥 우리 사회에 대해서 생각하시면 쉬워요. 바로 그 “신뢰"가 우리 사회를 이루는 근간이기 때문입니다. 사실 우리는 “나는 널 신뢰해" 와 같은 말을 거의 하지 않고, “신뢰"라는 단어가 자체가 일상 생활에서 자주 쓰이지 않기 때문에 그 신뢰가 얼마나 중요한 가치인지 잊고 지낼 때가 많아요. 하지만, 조금 단어를 바꿔서 “신뢰" = 약속의 이행 이라고 본다면? “약속"이라는 우리 일상생활에서도 정말 많이 쓰이는 단어이죠! “야, 우리 월드컵에서 스웨덴이 이기면 나한테 햄버거 사주기로 약속했잖아" “우리 5시 30분에 강남역 11번 출구에서 만나기로 약속했어" “아빠, 시험 성적 90점 넘으면 아이폰 사주신다고 약속하셨잖아요!” 우리가 현실세계에서 이런 “약속”을 할 때는 그 “약속"이 지켜지길 기대합니다. 그러나, 항상 지켜지진 못하죠. 내기에서 졌지만, 마음이 바뀌어서 햄버거를 안 사줄 수도 있고, 5시 30분에 만나기로 했지만 버스가 막혀서 7시에 올수도 있고, 성적은 90점은 넘었지만 아빠가 사주기 싫을 수도 있죠! 그렇지만, 블록체인 위에서의 “신뢰", 즉 “약속의 이행"은 절대적 입니다. (이를 Smart Contract라고 해요) 즉, 현실세계에서처럼 “내기는 졌지만, 햄버거는 안사줄거야!” 라는 땡깡이 통하지 않는 것이죠. 프로그래밍을 통하여, 만약에 A가 OOO하면, 반드시 XXX하게 해라"와 같이 이를 강제할 수 있습니다. 이것을 지키지 않는 방법은 내기 당사자 두 명 모두에게 없습니다. 그냥 지켜질 뿐이죠. 그렇기 때문에 “약속"을 완전히 100% 신뢰할 수 있고, 이로 인하여 현실세계에서 지금까지 그 “약속”이 이행되지 않을 때, 강제로 이를 이행시키기 위한 노력들을 들일 필요가 없게 되죠. 이렇게 완전히 상대를 “신뢰"할 수 있는 거래나 약속을 자유롭게 할 수 있다는 것이 이 블록체인 기술이 가지는 가장 큰 의미 라고 생각합니다. 뉴스나 신문에서 암호화폐 투자를 통한 경제적 이익, 암호화폐를 화폐로 봐야하는 것인지 상품으로 봐야하는 것인지 등 많은 논의들이 있지만, 사실 이런 것들은 블록체인 기술이 가지는 진정한 의미,”신뢰"를 온전히 이해하지 못한 것이라고 생각해요. 기술에 대한 근본적인 이해를 가지게 되면, 사실 그 위에 있는 암호화폐, 투자 등에 대해서 더 본질적으로 이해할 수 있을텐데 하는 아쉬움을 항상 가지고 있었어요. 그 예로 가장 유명한 비트 코인을 들어볼까요? 비트코인은 사람들에게 가장 널리 알려져 있는 암호화폐 중에 하나죠! 그 역사와 기원은 너무 기니까, 이번에는 왜 비트코인이 폭발적으로 성장했는지에 초첨을 맞춰서 말씀드리려고 해요. 그니까요 아빠 비트 코인은 말이에요, bitcoin.org는 비트코인을 “새로운 지불 시스템이자 완전한 디지털 화폐를 가능하게 하는 합의된 네트워크”라고 정의하고 있어... 중앙 집권화된 권력이 아닌 분권화된 네트워크와 암호를 통하여 발행과 거래를…” ............. 아...알겠습니다....저렇게 말하면 좀 아부지가 이해하기 어려우시니.. 쉽게 이야기 하면, 비트코인은 블록체인 기술의 “신뢰"를 바탕으로 “화폐"를 대신하기 위하여 만든 암호화폐 입니다. (지금은 다른 프로젝트들도 많이 생겼지만, 초기에는 그랬답니다!) 이것을 이해하기 위해서는 “화폐"(Currency)의 개념을 조금 “약속"과 “신뢰"의 관점에서 이해할 필요가 있습니다. 뉴스에서 10원짜리 동전이 사실 30원의 가치를 지니고 있다는 것을 보신 적이 있나요? (http://www.hani.co.kr/arti/economy/economy_general/665181.html) 10원짜리 동전을 만드는 구리 등 재료의 가치가 이미 10원을 넘기 때문이죠. 그래서 뉴스 링크처럼 10원짜리 동전을 녹여서 구리로 되파는 범죄를 저지른 일당들도 있었어요. 10원짜리 동전이 사실 구리로 녹여서 팔면 30원을 받을 수 있지만, 이 사실을 말하면서 편의점에서 10원짜리를 내면서 30원짜리 물건을 사려고 하면 과연 받아줄까요? 당연한 이야기겠죠..? 왜냐면, 우리 사회에서 10원짜리 동전은 (실제 그 원재료인 구리의 가격이 30원이라고 하더라도) 10원만큼의 가치를 가진다고 “약속”했고, 사람들이 이 “약속"이 사회에서 지속적으로 지켜지고 이행될 것이라고 “신뢰"하기 때문입니다. 이것은 단순히 종이 가격으로 치면 300원도 안될 5만원권 지폐가 실제로 5만원의 가치를 시장에서 발휘할 수 있는 것과 마찬가지죠! 즉, 화폐는 그것이 무엇으로 만들어졌고, 어떤 이름으로 불리고, 어떤 모양이고, 재료 원가가 얼마인지 전혀 중요하지 않습니다. 중요한 것은 그 화폐에 얼마의 가치를 부여하기로 그 사회에서 약속했고, 그것을 사람들이 신뢰하는지 여부 입니다. 이런 의미에서 화폐는 “신뢰"를 상징하는 가장 중요한 사회의 징표* 중 하나입니다. *JTBC 100분 토론에서 유시민 님이 암호화폐가 아니라, 가상징표라고 불러야 한다는 것도 화폐의 이런 속성을 이해하고 있었기 때문입니다. 화폐가 가진 신뢰라는 속성은 정확하게 블록체인이 기술을 통하여 확고하게 보장해줄 수 있는 가치와 정확하게 부합합니다. 그래서 비트코인은 블록체인 기술을 통해서 화폐를 대체하고자 하였던 것이고, 많은 사람들이 이 아이디어에 동의하면서 가격이 폭등했(었)죠. (사회적으로 넘어야 할 합의와 규제, 법제화 등의 문제는 모두 차치하고) 비트코인이 말하는 것처럼 실현되면 사실상 화폐의 개념은 필요 없을 수도 있습니다. 강백호가 송태섭에게 100만원을 실제로 지폐로 넘겨주지 않아도, 블록체인 상에 “강백호가 송태섭에게 100만원을 줌" 이라고 기록해놓으면 굳이 화폐를 사용할 필요가 없기 때문입니다. @HackShipGe 님의 타짜 영화 예시를 통한 설명을 보시면 더 이해가 빠르실 거에요! 심지어 더욱 혁신적인 것은, 기존에 이러한 약속에 대한 신뢰를 보장하는 기관들(은행,금융권,정부 등등)이 모두 필요 없이 바로 블록체인 위에서 비트코인만의 거래를 통해 100% 신뢰가능하고 이행할 수 있는 거래를 가능하게 만들 수 있습니다. 이때 듣고 계시던 아버지의 날카로운 질문 3! 아부지 : 완전한 공개를 통해서 신뢰를 보장할 수 있겠다는 것은 알겠다. 그런데 모든 문제와 정보에 있어서 위의 결혼 반지처럼 모든 것을 공개할 수는 없지 않냐? 예를 들면, 대통령 투표는 정보의 신뢰성이 중요한데 선관위에서 관리한다.그렇기에 비용이 많이 들지만, 믿을 수 있다. 근데 너말처럼 모든 걸 다 공개하면, 너말처럼 효율/효과적으로 정보의 신뢰성은 높아지지만 내가 누구 찍었고, 너가 누구 찍었고가 다 공개되는데 그게 말이 되는거냐? 오호. 이렇게 생각하실 줄은 몰랐는데 그건 좀 오해에요! 모든 것을 모두에게 ‘공개'한다는 것에서 ‘공개’라는 단어 때문에 위와 같은 오해를 충분히 불러일으킬 수 있을 것 같다는 생각이 들었어요. 특히나 어떤 부분이냐면,,,,,, ....에서 저 질문에 대한 답을 했는데, 지금은 넘나 길어진 느낌적인 느낌이라서 힘드네요..저 질문에 대한 답이 궁금하시거나 연재를 계속하면 좋겠다고 생각하시면, 팔로우랑 댓글 하트 등등 좀 주세요! 아니면 이거 한 번 쓰는데 너무 시간 오래걸려서 잘 하기 힘들거 같아유... 반응 좋으면 그럼 이어서 아부지랑 대화한 거나 또 앞으로 한 거 연재해서 한 번 써볼게유!!! 지금 저는 이미 하얗게 불태웠어요.... 쓰다 보니 너무 길어졌네요. 나름 쉽고 재밌게 쓰려고 하는데 이게 장난아니군요 ㅠㅠ 흑흑 재밌게 읽으신 분 있으면 그럼 제라드형 귀염짤 투척!!
4차 산업혁명을 준비할 때 읽으면 좋은 책 추천!
오늘의 우리는 20년 전만 해도 상상만 했던, 혹은 상상하지도 못했던 현실을 살고 있습니다. 마찬가지로 앞으로 20년 후의 삶 역시 상상 그 이상이겠죠. 기술과 사회 변화와 함께 경제 역시 크게 요동칠 겁니다. 뜨거운 화두가 된 블록체인 기술부터 그 이후의 예측까지를 만날 수 있는 책을 소개합니다. 블록체인기술은 4차 산업혁명 시대를 상징하는 기술입니다. 비트코인을 비롯한 암호 화폐들도 뜨거운 화두로 떠올랐고 논란의 대상이 되기도 했습니다. 블록체인이 뭐길래 이토록 큰 소동의 중심이 됐을까요? 많이 보고 듣지만 좀처럼 알 수 없는 블록체인을 들여다 봅니다.  이 책은 블록체인의 등장 배경부터, 어떤 영향을 끼칠 것이며, 앞으로 어떤 분야에서 어떻게 쓰일 것인지를 차근차근 알려줍니다. 블록체인과 암호화폐를 혼동하는 이들에게도 둘의 차이점을 명확하게 알려주죠. 블록체인이 단순한 경제의 변화 계기에 그치는 게 아니라 사회 전체를 뒤바꾸는 열쇠가 될 거라며 구체적인 활용 가능성과 의미도 풀어줍니다.  나무를 볼 게 아니라 숲을 보라고 이야기합니다. 암호화폐에 몰려든 투자자들에게도 적용되는 말이죠. 중요한 건 암호화폐의 시세가 아니라 미래 경제가 나아가는 방향성이라는 사실을 기억해야 합니다. 미래 경제가 지금과 동일한 구조, 개념, 움직임을 보일 거라는 생각은 사실이 아님을 역사가 거듭 증명해왔음을 잊지 마세요. 블록체인으로 무엇을 할 수 있는가 자세히 보기 >> https://goo.gl/tJPSo9 역사는 반복된다고 합니다. 경제사 역시 인간 역사의 일부로 비슷한 주기를 보이며, 위기와 기회를 오갑니다. 역사 속에 영원한 패자가 없듯 경제 분야에서도 흥망성쇠는 순환합니다. 중요한 건 흐름을 읽고 먼저 기회를 선점하는 거죠.  이 책은 2008년 금융 위기 이후 꾸준히 발전, 성장하고 있는 주요 신흥국들을 10가지 규칙을 기준으로 반영하고 분석합니다. 세계가 마주한 인구 절벽, 불평등, 지정학적 위치, 통화 가치 등 각국의 미래와 직결되는 조건들이 주요 규칙입니다. 한국 역시 인구절벽과 불평등 문제 등 극복하고 관리해야 할 위기 요인을 해소하는데 참고할 수 있겠죠.  세계는 매우 빠른 속도로 변화합니다. 글로벌, 세계화로 점점 더 가까워지고 하나로 모일 것이라던 예측과는 달리 분열과 갈등이 심화되는 모습을 보이기도 합니다. 빠른 데다 예측 불가능하기에 더욱 더 철저한 준비가 필요하겠죠. 애프터 크라이시스 자세히 보기 >> https://goo.gl/zv5L5L 에어비앤비, 우버 등 업체가 큰 성장을 이루고, 수 많은 공유 모델이 쏟아져 나오고 있습니다. 단순히 유행이라 여겼던 사건이 경제의 지형을 뒤흔들고 있는 거죠. 공유 경제는 4차 산업 혁명시대의 또 다른 화두입니다.  이 책은 공유 경제의 기원과 발전, 4차 산업 혁명시대에 공유 경제가 갖는 의미와 발전 가능성까지를 들여다 봅니다. 이론만 늘어놓는 게 아니라 실제 사례로 이야기 하고 있습니다. 낙관론, 긍정적인 시선에만 머물지 않고 위험과 위기, 변화까지 예측하고 있어 변화가 궁금한 분들에게 얼마간 명쾌한 해답을 제시하죠.  한국의 경우 기존 시장, 기업과의 충돌, 규제들로 공유 경제 활성화가 더딘 편입니다. 그러나 그 유예 기간은 길지 않을 것이며 유예된 만큼 더 크고 빠른 변화가 찾아올 겁니다. 전통적인 소유와 고용이 사라진 세상, 스스로는 얼마나 준비가 되어 있는지 진지하게 생각해야만 합니다. 공유경제 자세히 보기 >> https://goo.gl/RgMq6x 변화와 발전의 큰 흐름을 안다면 비록 세부적인 변화를 준비하지는 못하더라도 완전한 실패에 이르는 건 막을 수 있습니다. 모든 역사가 증명하듯 무에서 생겨나는 것도, 원인이 없는 결과도 없습니다. 모든 것은 흐름 안에 있다는 이야기죠.  이 책은 경제의 맥락을 잡고자 하는 이들을 위해 오래 전 과거까지 거슬러 올라갑니다. 화폐의 탄생 순간부터 경제 규모가 팽창하던 시기, 각 시대를 주름잡았던 강국들의 전략, 위기와 위기를 극복한 지혜 등 역사를 통해 미래를 내다볼 수 있는 안목을 키워줍니다.  아무리 유능한 경제학자, 거대한 기업이라고 해도 미래를 완전히 예측하거나, 흐름을 거스를 수는 없습니다. 큰 그림을 먼저 그리고 밑그림을 완성하는 일이 화가만의 일은 아니겠지요. 기본적인 흐름을 알고 난 후에는 나름의 예측을 해보는 즐거움을 누릴 수 있지 않을까요. 흐름이 보이는 세계사 경제 공부 자세히 보기 >> https://goo.gl/XZ75Dm 10년 안에 사라질 직업, 20년 후를 지배할 기술. 부정적으로 보면 어둡기만 하고, 뒤집어 생각하면 기회가 될 수도 있을 큰 변화의 시기를 살고 있습니다. 4차 산업혁명을 이야기할 때 자주 언급 되는 건 4차 산업혁명이 결과가 아니라 과정이라는 겁니다. 중요한 건 4차 산업혁명 이후라는 이야기죠.  이 책은 4차 산업혁명이 정착한 이후의 세상을 예측합니다. 인공지능과 빅 데이터, 사물인터넷과 블록체인. 이러한 기술들이 피할 수도 거부할 수도 없는 현실로 자리 잡은 세상에 누가 살아남고, 어떻게 변화할지 체계적으로 분석해 청사진으로 그려냅니다.  코인 투자에 열을 올리는 사람들, 과학의 발전을 낙관하는 사람들, 여전히 부동산 불패 신화를 믿는 사람들, 지금 이후의 시간을 준비하는 마음과 방식은 모두 다릅니다. 그러나 한 가지 분명한 건 미래는 준비하는 자들의 것이며, 그 과정에서 아는 것이 힘이 될 거라는 사실입니다. 미래 지배자까지는 아니더라도, 혼란 속에서 살아가는 일은 피할 수 있기를 바랍니다. 4차 산업혁명 그 이후 미래의 지배자들 자세히 보기 >> https://goo.gl/P5DrAo 지금까지의 예측이 모두 빗나갈 수 있다는 가능성까지 고려해야만 합니다. 20년 전의 우리가 20년 후의 현재를 예측할 수 없던 것처럼, 많은 준비에도 불구하고 놀라고 혼란스러워야 했던 것처럼 오늘 이후의 미래 역시 다르지 않겠죠. 그럼에도 미래를 준비해야 하는 이유는 그 미래가 우리의 것이기 때문에, 우리가 살아가야 할 현재가 될 것이기 때문 아닐까요. 정기배송 자세히 알아보기 >> https://goo.gl/Aq5fqT
'코인'인지 뭔지 핵쉽게 정리해dream (3)
와아......... 빙글러들 반응 화력 ㄷㄷ한 거임 빙글러들의 응원에 힘입어서 쓰는 카드! 벌써 세번째 카드임 카드1 : 블록체인이 뭐임? 카드2 : 블록체인과 코인의 관계 - '채굴'에 대하여 카드 1과 카드 2를 읽었다면 이번 내용도 수월하게 이해할 수 있을 거임 현재 인류 문명의 최'첨단'에서 일어나고 일이니만큼 엄청 쉬운 개념은 아님. 하지만 침착하게 읽으면 다 흡수될 수 있도록 핵쉽게 설명해 드리겠음! 먼저 1화, 2화 요약 들어감. 블록체인이란? 데이터를 블록 형태로 저장한 후, 블록별 코드를 연결하여 긴 데이터 사슬을 만드는 것. 코드로 연결된 데이터 사슬이니, 새로운 데이터를 블록에 잇기 위해선 블록의 코드가 필요함 블록의 코드를 받기 위해선 코드 생성에 필요한 복잡한 문제를 풀어야 함 (→채굴) 문제를 풀어서 블록을 만든 사람(→채굴자)에게는 보상(→코인)이 주어짐 여기까지가 지난 카드 까지의 내용임. 깔끔하게 이해한 것 같았는데 뭔가 찝찝함. 뭘 한다는 건지는 알겠는데, 저걸 왜 하는지는 납득이 안감 아니 그니까 데이터 블록을 코드로 연결한다는 건 알겠거든? 근데 코드가 바로바로 나오게 해놓으면 편할 껄 왜 저 문제를 풀어야되도록 만드냐고. 납득이 안가잖아 납득이... 아 진짜... 어떡하지 너? 라고 생각한 빙글러들 있을 거임. 아리송한 빙글러들을 위한 설명에는 예시가 딱임 예시를 위해서, 오늘도 호구극장 시작하겠음 채굴의 과정 - 코드를 얻기 위해 의무적 뻘짓이 필요한 이유 데이터를 블록 형태로 저장하는 것 오케이. 블록을 코드로 연결 오케이. 블록을 만들어 주는 게 '채굴'이라는 것도 오케이. 근데 그 채굴이 드럽게 귀찮은 문제를 풀어야 가능한 건 왜 때문임?! 여러분들의 강렬한 의문을 풀어주기 위해, 강렬한 인생을 살고 계신 호구아저씨 등판함. 오늘도 눈물 마려운 호구짓의 연속이니 엠보싱 빵빵한 휴지 준비 필수임 #총알충전 자자자! 나 돈 구해왔어~~ 다시 게임 시작 하자구~ 지난 화에서 정마담에게 50 비트코인을 빌린 호구 아저씨. 자금은 빵빵, 자신감은 뿜뿜. 두려울 게 없는 거임. 타짜들에게 도박을 신청하기로 결심. 인생 컨트롤+알트+델리트 키 연타하러 다시 타짜들을 찾아옴. #탈타라탈탈 엌....읔.....허엇.....으윽..... 빵빵하게 채워왔던 자금은 당연히 순ㅋ삭ㅋ. 통돌이 세탁기 속 이불빨래마냥 탈타라탈탈 털림. 털리고 나니 정신이 번쩍 듦. 정신을 차려 보니, 돈은 온데간데 없고 50 비트코인(현재 원화 5억 상당)의 빚만 남게 됨. 이 빚부터 어떻게 없애지 않으면 빠르게 인생 셔터문 내릴 수도 있겠다는 생각이 들어 정마담을 찾아감. 빚 조금만 까주면 안될까...? 빚진 처지로 정마담을 찾아가니 반응이 확 달라짐ㄷㄷ 귀요미 정마담*^^*은 어디가고 싸늘한 표정으로(ㅡ,.ㅡ) 빚 갚으라는 얘기만 함ㅜㅜ 빼도박도 못하고 거지가 되는 것인가... 하는 순간 호구의 머릿속에 좋은 생각이 떠오름 그래 조작! 조작을 하자!!! #조작의뢰 이 난관을 타개하기 위해 호구는 거래 내용 자체를 조작하기로 함. 정마담이 호구한테 돈을 줬다는 기록을 조작하면 빚을 확 줄일 수 있는거임. 비트코인 블록체인을 해킹해줄 전문 해커에게 찾아감. 블록이고 뽈록이고 간에~ 돈만 받으면 되오. 우리가 해킹해서 아이 뚫리는 시스템이 없소. 딱 봐도 겁나 믿음직함ㄷㄷ 해커들은 비트코인 블록체인 시스템에 침입해서 장부 기록을 조작하기로 했음. 우선 정마담이 호구한테 50 비트코인 줬다는 기록을 찾아가봄 위 그림 처럼 정마담이 호구한테 50 비트코인 줬다는 기록을 찾음 이제 이걸 정마담이 호구한테 50 비트코인이 아닌 '0.01 비트코인을 줬다' 바꾸기로 함. 기록을 바꾸려 했지만 문제가 발생함. 블록의 코드는 거래정보를 포함한 여섯개 정보의 조합으로 만들어지기 때문에, 거래정보를 바꾸자 블록의 코드가 바뀌어버림!! 바뀌어버린 코드는 다음 블록에 기록된 '이전 블록의 코드'와 일치하지 않기 때문에 성립하지 않음. 호구아재 패닉하기 시작함 당황할 거이 뭐있네! 다음 블록으로 가서, '이전 블록의 코드'가 적힌 부분 바꿔버리면 되는 거 아이니? 해커들은 거래3 블록에 들어가서, '이전 블록의 코드'를 새로 받은 7196으로 바꾸기로 함. 근데 '이전 블록의 코드'를 바꾸자 문제가 생김 블록의 코드는 '이전 블록의 코드'를 포함한 여섯개 정보의 조합으로 만들어지기 때문에, '이전 블록의 코드'를 바꾸자 현재 블록의 코드가 바뀌어버림!! 바뀌어버린 코드는 다음 블록에 기록된 '이전 블록의 코드'와 일치하지 않기 때문에 성립하지 않음. 호구아재 패닉하기 시작함 당황할 거이 뭐있네! 다음 블록에 가서, '이전 블록의 코드'가 적힌 부분을 바꿔버리면 되는........... 맞음. 무한반복임. 블록체인은 블록별 코드로 연결되어있고, 블록별 코드는 블록의 데이터가 바뀌면 바뀌어버림. 그러므로 이미 기록된 데이터를 바꾸려면, 해당 블록부터 이어진 모든 블록의 코드를 싹 다 바꿔야함! 에잇, 까짓거 부지런히 싹 다 바꾸면 되는거 아이니? 근데 부지런히 싹 다 바꾸는 게 불가능함. 왜냐면 한 블럭의 코드를 새로 받을 때마다 뭘 해야한다?? 문!제!풀!이!ㅋㅋㅋㅋㅋ 지난화에서 이 문제풀이가 얼마나 드럽게 빡센 일인지 봤을 거임ㅋㅋㅋㅋ 인간이 아닌, 미칠듯이 풀가동된 컴퓨터가 푸는 데에도 10분이 걸리도록 짜여짐 이건 1부터 하나하나 넣으면서 노다로 푸는 거기 때문에 머리가 좋고 나쁘고도 상관없음 알파고 할애비가 와도 블록 하나당 10분간 풀어야 되는 거임ㄷㄷ 할파고 : 아니 (켈록) 그.. 숫자를 내가.. 왜 (켈록켈록) 맞혀야...혀.. (켈록) 현재 비트코인 블록체인 상에는 48만개의 블록이 있음 중간에 있는 블록을 바꾼다 치면, 이어진 24만개의 블록의 코드를 바꿔야 하고 그러기 위해선 240만 분, 즉 1666일이 걸림ㄷㄷㄷㄷ 그리고 더 소름돋는 사실은 뭔지 앎??? 그 짓을 하는 동안에도 새.로.운. 블.록.이. 계.속. 생.겨.난.다.는 점임 결국!!! 채굴할 때에 시간을 들여 문제를 풀게 하는 과정이 있어서 무한의 시간을 들여도 블록을 조작하는 것은 불가능하게됨! 자 어떰? 무쓸모 쓰레기처럼 보였던 문제풀이 과정이었지만 이 쓸 데 없는 과정때문에 조작이 아예 원천 차단될 수 있게 된거임 채굴 너 이색히 *-_-* 쫌하는데? 여기까지 오신 분들이라면 블록체인이 무엇인지(데이터사슬), 블록체인은 어떻게 운영되는 것인지(채굴과 보상), 채굴은 왜 뻘짓이 포함되어야 하는지(보안과 안정성)를 이해하고 있는 이 시대의 지성인이 된 거임 이제 이정도 기본이 갖춰졌으면 앞으로 이해할 수 있는 게 훨씬 많아진 거고, 이후의 내용들이 훨씬 알아가는 재미가 쏠쏠함ㅋㅋㅋ 물론 사기와 범죄와 정치질이 넘쳐나는 스펙타클한 내용들도 준비되어있음ㅇㅇ 기대해도 좋음 이후 내용들로 넘어가는 데에 여러분들이 해준 질문들을 보는 게 도움이 될듯함 온달님이 많은 사람들이 궁금해 할만한 질문 잘 해주셨음! 스꼬이 온달쨔응 채굴에 대한 보상이 현금이 아니라 가상화폐인 이유는, 애초에 채굴에 대해 보상을 해주는 유일한 이유가 "블록체인 시스템을 유지시키는 것"이기 때문임 스... 스미마셍; 예시를 통해 좀 더 자세히 보겠음! 정마담이 호구한테 50 비트코인 주었다는 내용을 내가 블록으로 만들어서 등록시켰음(채굴). 그리고 그 댓가로 비트코인이 아닌 50만원을 받기로 한거임ㅎㅎ 신난다 그럼 이제 50만원을 어떻게 받...지...?? 농협 079-031-51XXX ... ??!!!! 이렇게 되면 이제 블록체인 시스템 외에 '농협은행' 이 등장하게 됨 그리고 이제보니 받는 돈도 '한국은행'에서 만든 거였음 원래는 거래하는 사람과 데이터만 있었던 일에 은행, 은행 직원, 은행의 컴퓨터 시스템 등등이 엮이게 됨 추가적인 보안과 관리가 없어도 무한으로 신뢰할 수 있었던 블록체인 시스템에 국가와 은행 없이는 운영될 수 없는 절차가 추가된 거임 내 채굴비 돌려줘라 엉엉 ㅜㅜ 블록체인만으로 무한의 신뢰성이 담보되었던 예전과는 달리 은행별 송금시스템이 또 도입되어야 하고, 은행 시스템이 어떻게 운영되는지 금융 정책이 어떻게 되는지, 물가가 어떻게 되는지, 금리가 어떻게 되는지 등등.. 이 모두 연관을 갖게 됨 외부의 영향을 받지 않고, 국가와 은행 등의 통제와 주도 없이 안전하게 운영될 수 있다는 블록체인 시스템의 장점이 아예 없어져 버리는 거임 나...난 그냥 현금으로도 받을 수 있는지 궁금했을 뿐인데..망하는 거였어? 현재 '비트코인을 거래소에 가져다 팔아서 현금을 버는 시스템'이 블록체인이 떠들던 '탈중앙화'니 뭐니랑 상반된다는 얘기가 그래서 나오는 거임. 결국 거래소 시스템이 있어야 하고, 현금에 종속되기 때문임. 그래서 아직 블록체인, 암호화폐가 가야할 길은 매우 멀음. 현재로서는 블록체인 시스템을 벗어나지 않으면서, 블록체인의 운영과 보안이 스스로 완성될 수 있도록 해주는 보상의 역할은 블록체인 시스템 내부에 속해있는 '가상화폐'가 해줄 수밖에 없는 거임 어떤 블록체인에서 사용되는 어떤 가상화폐가 '가치가 있을 것'이다 라고 생각하는 사람들이 많을 수록, 사람들은 그 블록체인 안에서 채굴 열심히 할거임 (가치있다고 생각하는 가상화폐를 받기 위해) 그러면 그 블록체인 시스템은 유지됨. 반대로 어떤 블록체인에서 보상으로 주는 어떤 가상화폐가 '가치가 없을 것이다'라고 생각한다면 사람들은 블록체인 시스템 유지를 위해 굳이 채굴을 해주지 않을 것이고, 그 블록체인은 소멸하게 될 것임 그리고 또 질문주신 게~~ 어디보자~ 헐쓰 깜짝이야! 와 나진짜 깜놀;; 이거 진짜 완전 대박 좋은 질문;;; 완전 핵심적인 질문임ㄷㄷㄷ 이 질문에 대한 내용이 진짜 핵꿀잼인데 이게 어떻게 된 거냐면 ...은(는)! 다음 카드에 이 내용을 가지고 이야기 해보도록 하겠음 설날동안 카드 재미지게 읽으시고 설 끝나고 또 흥미진진한 코인썰로 만나 뵙겠음! 1화와 2화 하트 눌러주고 덧글 달아주고 팔로우 해주신분들께 넘나 감사드림 덧글 남겨준 @gnewspress @obujaya @heavenkiss74 @dance48602 @gangjuny @KwonTaekOh @hyun3788 @segating @happysun260 @wkqdl21 @lovelywooky @thourock93 @jewel1 @jiya008 @ghkfuf @ondal0621 @kwk00126 @goidokid @sjh173 @drzzz @hersheps @elan0si @lovestory2nd @sihw1127 @fjffjfgo @tpdud56 @SungKyungHwan @1wacaget @eugene8405 @sang0152 @dskasami @luuhs76 @gkznfjqm2 @ByeongChanAhn @adlin @khkang72 @yeramppa @kawaii0215 @aandd @HyoungJoonLim @osj1234567 @mrs123 @goodmorningman @p22220169 @JeeF @assak299 @sniper320081 @Force4good2u @yhong @freshrice80 @mvio9256 @freemoa @perridote @miradoong @mhp8180 @iayf1052 @jinna3514 @sa1113 @wngh708879 @MHWang @ofe3036 @gunu66 @jhong0321 @zerobagama @zkdns @soneunhee0419 @BBya @sm98345 @chlrkdwn93 @ccoccoma @BaboSamRyoung @etet1023 @rlaeh1236 @smell1818 @pkhwbw18 @krwst043 @cndcnddl @chriz @sin6erela 님들 특히 감사드림 복 많이 받으시길 바라고 이번 화도 하트 덧글 팔로우 부탁드림!
코딩과 아두이노의 찰떡궁합 Ep-27
안녕하세요?^^ 에듀아이 입니다^^ 오랜만에 다시 뵙게되네요...바쁜일로인해 한동안 뜸했네요^^;; 오늘은 아두이노와 블루투스 모듈을 연결해 스마트폰과 통신하는 방법을 알아보도록 하겠니다. 아두이노 보드와 블루투스를 지원하는 모듈만 있으면 스마트폰과 연결해 통신하는 기능을 구현할 수 있으며, 더 나아가 블루투스로 제어하는 전등, 블루투스 RC카 등을 만들 수 있습니다. 아두이노에 연결하는 블루투스 모듈은 여러가지가 있지만 대표적으로 아래의 모듈이 많이 사용됩니다. 블루투스는 2.0 버전을 지원하는 모듈과 블루투스 4.0을 지원하는 버전으로 구분됩니다. 블루투스 2.0과 4.0의 가장 큰 차이는 통신 거리와 전력 소모량에 있습니다. 블루투스 2.0 버전은 상대적으로 전송 거리가 짧고 전력 소모량이 많습니다. 이에 반해 블루투스 4.0은 전송거리가 더 길고 전력 소모량도 적은 편입니다. 블루투스 4.0 모듈은 블루투스 2.0 모듈에 비해 가격이 조금더 비싸기 때문에 아두이노 프로젝트에서는 대부분 HC-06을 많이 사용합니다. 하지만 HC-06은 아이폰을 지원하지 않아 아이폰을 사용하시는 분들은 AT-09나 HM-10을 이용하셔야 합니다. 이제 프로젝트에 필요한 부품을 알아보겠습니다. 아두이노 우노(Uno) 보드가 필요하구요~ 블루투스 통신에 사용할 모듈은 가장 많이 사용하고 저렴한 HC-06을 이용하겠습니다. 아두이노 보드와 블루투스 모듈(HC-06)은 아래와 같이 연결해주시면 됩니다. 연결이 완료되면 아두이노 IDE를 실행해 아래 코드를 입력합니다.  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ #include <SoftwareSerial.h> SoftwareSerial BTSerial(2, 3); void setup() { Serial.begin(9600); Serial.println("Hello!"); BTSerial.begin(9600); void loop() { if (BTSerial.available()) { Serial.write(BTSerial.read()); } if (Serial.available()) { BTSerial.write(Serial.read()); }  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ 위 코드에 대해 설명드리겠습니다. #include <SoftwareSerial.h> SoftwareSerial.h 파일을 로드하는 명령입니다. 소프트웨어 시리얼을 사용하는 경우에 이 파일을 로드해야 합니다. 소프트웨어 시리얼은 디지털 0, 1번이 아닌 다른 핀에 블루투스 모듈을 연결하는 것을 말합니다. 디지털 0, 1번에 연결하면 하드웨어 시리얼로 통신을 하게되는데 문제는 컴퓨터에 연결된 상태에서는 USB 포트가 디지털 0, 1번을 통해 데이터를 주고 받기 때문에 사용할 수 없습니다. 그래서 아두이노에서는 2~13번 핀 중 원하는 핀에 연결하고 사용할 수 있도록 지원합니다. 이때는 SoftwareSerial.h 파일을 로드해야 합니다. SoftwareSerial BTSerial(2, 3); 소프트웨어 시리얼로 통신하기 위해 이름과 송신핀과 수신핀번호를 지정하는 명령입니다. Serial.begin(9600); BTSerial.begin(9600); 시리얼 모니터의 통신 속도와 블루투스 통신의 속도를 설정한 것입니다. 이 두가지의 속도는 같아야합니다. 다르면 정상적인 통신을 할 수 없게됩니다. if (BTSerial.available()) { Serial.write(BTSerial.read()); } 만약 블루투스로 아두이노에 전송된 데이터가 있다면 해당 데이터를 읽어 시리얼 모니터에 출력하는 명령입니다. 스마트폰에서 입력한 내용이 있다면 해당 내용을 아두이노의 시리얼 모니터에 나타내줍니다. if (Serial.available()) { BTSerial.write(Serial.read()); } 만약 시리얼 모니터의 입력이 있다면 해당 내용을 블루투스를 통해 전송하는 명령어입니다. 이정도로 코드 설명은 마무리하고 이제 코드를 업로드 합니다. 아두이노가 연결된 컴퓨터의 아두이노 IDE 프로그램 오른쪽 상단 [시리얼 모니터]를 클릭해 엽니다. 스마트폰에서 페어링을 진행해야 합니다. 스마트폰의 화면을 켠 후 [설정]에 들어가 [블루투스] 설정 화면으로 들어갑니다. 블루투스를 사용 모드로 스위치를 켜면 'HC-06'이라는 아두이노에 연결한 블루투스 모듈이 나타납니다. 해당 모듈을 터치합니다. 페어링을 위해 암호를 입력하는 화면이 나오면 '1234'를 입력합니다. 페어링이 완료되면 '등록된 디바이스' 항목에 'HC-06'이 나타납니다. 이제 스마트폰의 [Play 스토어]를 실행해 검색창에 [Arduino Bluetooth Controller]를 입력하고 검색합니다. 아래 그림과 같은 앱을 설치합니다. 앱 설치가 완료되면 앱을 실행합니다. 페어링된 기기 목록이 나타납니다. 'HC-06'을 터치합니다. 모드는 [Terminal Mode]를 터치합니다. 스마트폰과 아두이노에 연결된 블루투스 모듈이 정상적으로 연결이되면 HC-06 모듈의 붉은색 LED가 깜박임을 멈추고 계속 켜져있는 상태가 됩니다.(깜박거림=연결대기상태, 켜진상태=연결됨) 이제 스마트폰의 터미널 모드의 입력란에 아두이노에게 보낼 메시지를 입력합니다. 컴퓨터에 실행한 시리얼 모니터에 스마트폰에서 입력한 메시지가 나타납니다. 시리얼 모니터에서 입력한 내용도 스마트폰으로 보낼 수 있습니다. 시리얼 모니터 상단 입력란에 보내고싶은 메시지를 입력 후 [전송]을 클릭합니다. 스마트폰에 메시지가 전송된것을 확인할 수 있습니다. 이 방법을 조금만 응용하면 블루투스를 통해 LED를 켜고 끄거나 센서에서 측정된 값을 스마트폰으로 전송할 수 있게됩니다. 다음 시간에는 블루투스로 LED를 켜고 끄는 방법을 알아보겠습니다. 오늘은 여기까지 하도록 하겠습니다. 감사합니다. ▶상상을 현실로 만드는 아두이노(Arduino)      ■  박경진 지음 / 에듀아이 출판 ■   알라딘, Yes24, 교보문고, 영풍문고, 반디앤루니스, 인터파크에서 구입가능합니다.      ■  아두이노 초보자 책으로 추천합니다. [책에서 다루는 내용]     ■ 소프트웨어 코딩을 이해하고 아두이노에 업로드/테스트하는 방법          ■ 서서히 색상이 그라데이션 형태로 바뀌는 LED 무드등 만들기         ■ 리드 스위치 모듈로 창문이나 현관 문 열림 감지하기         ■ 토양 수분 센서로 화분의 수분 상태를 측정해 물 공급시기 체크하기         ■ 비접촉식 온도 센서로 비접촉 체온 측정기 만들기         ■ 이 세상 하나뿐인 우리집 미세 먼지 측정기 만들기         ■ 주변 밝기를 측정해 자동으로 켜지고 꺼지는 스마트 전등(가로등) 만들기        ■ 거리를 측정하는 초음파 센서를 이용해 자동차 후방 감지기 만들기         ■ 일정한 거리내의 사람을 인식해 자동으로 열리고 닫히는 스마트 휴지통 만들기         ■ 스마트폰 블루투스로 연결해 제어하는 RC 카 만들기         ■ 집밖에서 스마트폰으로 집안의 사물인터넷 기기 제어    [이 책의 대상 독자]     ■ 아두이노를 가장 쉽게 접근하고, 활용하고자 하는 독자        ■ 소프트웨어 교육 의무화로 소프트웨어 코딩을 배우고 싶은 학생         ■ 사물인터넷 제품을 만들어 스마트 홈을 구현하고 싶은 독자         ■ 어렸을 때 생각했거나 상상했던 제품을 직접 만들어보고 싶은 독자         ■ 소프트웨어와 하드웨어의 상관 관계를 이해하고 제어하고 싶은 독자         ■ 로봇, 드론 등의 제품 구현을 위한 기본 지식을 습득하고자 하는 독자    아두이노 초보자분들이 가장 쉽게 배울수 있는 책입니다. 추천합니다^^!! 끝까지 읽어주셔서 고맙습니다^^ 다음 에피소드에서 또 뵙겠습니다^^ #코딩추천책 #코딩책추천 #아두이노책 #아두이노강좌 #아두이노책추천 #아두이노추천도서 #코딩책 #사물인터넷 #사물인터넷책추천 #블루투스 #bluetooth #블루투스통신하기
코딩과 아두이노의 찰떡궁합 Ep-28
지난 에피소드(코딩과 아두이노의 찰떡궁합 Ep-27)에서 블루투스 2.0 을 지원하는 모듈로 통신하는 방법을 알아보았습니다. 지난 에피소드에서 사용한 모듈은 아이폰에서는 사용이 불가능합니다. 그리고 블루투스 2.0 모듈이기 때문에 전력 소모도 많습니다. 블루투스 4.0 모듈을 이용하면 안드로이드, 아이폰 구분없이 연결 가능하며, 전력 소모도 적습니다. 아두이노에 연결해 사용 가능한 블루투스 4.0을 지원하는 모듈은 AT-09와 HM-10이 있습니다. AT-09가 가격이 저렴하기 때문에 해당 모듈을 이용한 연결을 해보겠습니다. 물론 HM-10도 같은 방법으로 연결할 수 있습니다. 이제 프로젝트에 필요한 부품을 알아보겠습니다. 아두이노 우노(Uno) 보드가 필요하구요~ 블루투스 통신에 사용할 모듈은 4.0이 지원되는 AT-09를 이용하겠습니다. 참고로AT-09는 오픈마켓이나 네이버에서 검색하시면 HC-06보다 저렴한 가격에 판매되고 있습니다. 아두이노 보드와 블루투스 모듈(AT-09)는 아래와 같이 연결해주시면 됩니다. 연결이 완료되면 아두이노 IDE를 실행해 아래 코드를 입력합니다.  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ #include <SoftwareSerial.h> SoftwareSerial BTSerial(2, 3); void setup() { Serial.begin(9600); Serial.println("Hello!"); BTSerial.begin(9600); void loop() { if (BTSerial.available()) { Serial.write(BTSerial.read()); } if (Serial.available()) { BTSerial.write(Serial.read()); }  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ 위 코드에 대해 설명드리겠습니다. #include <SoftwareSerial.h> SoftwareSerial.h 파일을 로드하는 명령입니다. 소프트웨어 시리얼을 사용하는 경우에 이 파일을 로드해야 합니다. 소프트웨어 시리얼은 디지털 0, 1번이 아닌 다른 핀에 블루투스 모듈을 연결하는 것을 말합니다. 디지털 0, 1번에 연결하면 하드웨어 시리얼로 통신을 하게되는데 문제는 컴퓨터에 연결된 상태에서는 USB 포트가 디지털 0, 1번을 통해 데이터를 주고 받기 때문에 사용할 수 없습니다. 그래서 아두이노에서는 2~13번 핀 중 원하는 핀에 연결하고 사용할 수 있도록 지원합니다. 이때는 SoftwareSerial.h 파일을 로드해야 합니다. SoftwareSerial BTSerial(2, 3); 소프트웨어 시리얼로 통신하기 위해 이름과 송신핀과 수신핀번호를 지정하는 명령입니다. Serial.begin(9600); BTSerial.begin(9600); 시리얼 모니터의 통신 속도와 블루투스 통신의 속도를 설정한 것입니다. 이 두가지의 속도는 같아야합니다. 다르면 정상적인 통신을 할 수 없게됩니다. if (BTSerial.available()) { Serial.write(BTSerial.read()); } 만약 블루투스로 아두이노에 전송된 데이터가 있다면 해당 데이터를 읽어 시리얼 모니터에 출력하는 명령입니다. 스마트폰에서 입력한 내용이 있다면 해당 내용을 아두이노의 시리얼 모니터에 나타내줍니다. if (Serial.available()) { BTSerial.write(Serial.read()); } 만약 시리얼 모니터의 입력이 있다면 해당 내용을 블루투스를 통해 전송하는 명령어입니다. 이정도로 코드 설명은 마무리하고 이제 코드를 업로드 합니다. 아두이노가 연결된 컴퓨터의 아두이노 IDE 프로그램 오른쪽 상단 [시리얼 모니터]를 클릭해 엽니다. 시리얼 모니터가 열리면 하단 목록에서 [Both NL & CR]을 선택합니다. 이 항목으로 선택되지 않으면 블루투스로 주고받는 메시지가 깨져보이게 됩니다. PC에서의 작업은 완료되었습니다. 스마트폰에서 통신할 앱을 설치해야합니다. 블루투스 4.0을 지원하는 앱을 설채햐아합니다. 블루투스 2.0은 설정에서 미리 페어링을 해야하지만 블루투스 4.0은 페어링 없이 앱에서 바로 연결해 사용합니다. Play 스토어/App Store에서 [3demp]로 검색합니다. 검색 결과 앱 중 [3Demp - 3dempPlayer...]를 설치합니다. 앱이 설치되면 앱을 실행합니다. 앱이 실행되면 왼쪽 블루투스 로고를 터치합니다. [SCAN]을 터치해 근처 블루투스 모듈을 검색합니다. 검색된 모듈을 터치해 선택합니다. 블루투스 연결이 완료되면 블루투스 아이콘 모양이 밝은 하늘색으로 표시됩니다. 아두이노에 연결한 블루투스 모듈도 붉은색 LED가 깜박거리는 상태에서 계속 점등 상태로 나타납니다. 이제 통신을 위해 오른쪽 하단 [TEXT]를 터치합니다. 하단 메시지 입력란에 아두이노로 전송할 메시지를 입력하고 [Send]를 터치합니다. 컴퓨터의 아두이노 시리얼 모니터에 스마트폰에서 전송한 메시지가 나타납니다. 이번에는 아두이노 시리얼 모니터 입력창에 텍스트를 입력 후 [전송]을 클릭합니다. 아두이노 시리얼 모니터에서 전송한 메시지가 스마트폰에 전송된것을 확인할 수 있습니다. 위 과정을 동영상으로 확인해보겠습니다. https://www.youtube.com/watch?v=YJd_QDB992E 이 방법을 조금 더 응용하면 LED를 켜고 끄는것, RC카를 만드는 것 등도 가능합니다. 다음 강좌에는 블루투스 4.0으로 LED를 제어하는 방법을 알아보겠습니다. 감사합니다. ▶상상을 현실로 만드는 아두이노(Arduino)      ■  박경진 지음 / 에듀아이 출판 ■   알라딘, Yes24, 교보문고, 영풍문고, 반디앤루니스, 인터파크에서 구입가능합니다.      ■  아두이노 초보자 책으로 추천합니다. [책에서 다루는 내용]     ■ 소프트웨어 코딩을 이해하고 아두이노에 업로드/테스트하는 방법          ■ 서서히 색상이 그라데이션 형태로 바뀌는 LED 무드등 만들기         ■ 리드 스위치 모듈로 창문이나 현관 문 열림 감지하기         ■ 토양 수분 센서로 화분의 수분 상태를 측정해 물 공급시기 체크하기         ■ 비접촉식 온도 센서로 비접촉 체온 측정기 만들기         ■ 이 세상 하나뿐인 우리집 미세 먼지 측정기 만들기         ■ 주변 밝기를 측정해 자동으로 켜지고 꺼지는 스마트 전등(가로등) 만들기        ■ 거리를 측정하는 초음파 센서를 이용해 자동차 후방 감지기 만들기         ■ 일정한 거리내의 사람을 인식해 자동으로 열리고 닫히는 스마트 휴지통 만들기         ■ 스마트폰 블루투스로 연결해 제어하는 RC 카 만들기         ■ 집밖에서 스마트폰으로 집안의 사물인터넷 기기 제어    [이 책의 대상 독자]     ■ 아두이노를 가장 쉽게 접근하고, 활용하고자 하는 독자        ■ 소프트웨어 교육 의무화로 소프트웨어 코딩을 배우고 싶은 학생         ■ 사물인터넷 제품을 만들어 스마트 홈을 구현하고 싶은 독자         ■ 어렸을 때 생각했거나 상상했던 제품을 직접 만들어보고 싶은 독자         ■ 소프트웨어와 하드웨어의 상관 관계를 이해하고 제어하고 싶은 독자         ■ 로봇, 드론 등의 제품 구현을 위한 기본 지식을 습득하고자 하는 독자    아두이노 초보자분들이 가장 쉽게 배울수 있는 책입니다. 추천합니다^^!! 끝까지 읽어주셔서 고맙습니다^^ 다음 에피소드에서 또 뵙겠습니다^^ #코딩추천책 #코딩책추천 #아두이노책 #아두이노강좌 #아두이노책추천 #아두이노추천도서 #코딩책 #사물인터넷 #사물인터넷책추천 #블루투스 #bluetooth #블루투스통신하기
패스콘 기술 백서 서론
패스콘 기술 백서 작성 중,,,, 이제 겨우 서론 정리햇는데,,, 힘드네요,,,허리가 끊어질듯,,,,, 패스콘 기술서 작성자: ㈜지코드이노베이션 2019년 11월 20일 I. 초록 인류의 생활은 첨단 기술의 혜택에 의지하여 더욱 편리해지고 생산성은 지속적으로 향상되고 있다. 특히 인터넷에 연결하여 이용하는 서비스는 그 수와 양이 급속하게 팽창하며 우리의 일상과 깊게 관련되어 있다. 그러므로 인터넷으로 창조된 사이버 세계에서 인간의 안전을 확보하는 것은 다른 무엇보다 특별하게 요구된다. 그럼에도 불구하고 최근의 동향을 살펴보면 해킹과 같은 사이버 범죄가 오히려 지속적으로 증가하는 추세에 있다. 사용자가 온라인 서비스를 이용할 때는 어떤 단말장치를 이용하여 서비스에 접속하는 것이 일반적이다. 이 과정에서 서비스를 이용할 자격이 있는지 여부를 검증하는 것은 사용자의 자산과 프라이버시를 보호하기 위하여 필수적으로 요구된다. 뿐만 아니라 그 과정에서 송수신되거나 저장되는 데이터에 대한 안전을 유지하는 것도 매우 중요하다. 전자를 인증기술이라고 하며 후자를 암호화 기술이라고 한다. 그러므로 인증과 암호화는 모든 온라인 시스템에서 가장 중요한 보안 요소라고 할 수 있다. 비대면 온라인 상에서 상대방을 확인하고 서비스에 대한 권한을 승인하려면 먼저 상대방을 식별하여야 한다. 식별하는 하는 방법으로 가장 널리 사용되는 것은 ID이다. 일단 ID로 상대방을 식별한 후에는 해당 ID를 사용할 자격이 있는지를 검증하여야 한다. 이와 같이 식별과 검증으로 이루어진 일련의 과정을 인증이라고 한다. 인증이 식별과 검증으로 구성된다고 볼 때 식별을 위한 데이터는 공개될 수밖에 없는 속성이 있다. 그러므로 인증과정에서의 보안은 검증에 초점이 맞추어 지게 되는 것이 당연하다. 가장 널리 사용되는 검증 방법은 각 ID에 매칭된 “비밀번호”를 확인하는 것이다. 또한 비밀번호의 불완전한 보안성으로 인하여 OTP나 SMS 요소를 추가로 검증하는 2FA(2 Factor Authentication)도 있다. 나아가 전자서명 생성 키를 검증하는 PKI전자서명 방식도 확산되고 있다. 특히 최근에는 생체인증도 활발하게 이용되고 있으며 이 또한 PIK전자서명 방식의 일종이다. 본 백서에서는 사이버 범죄의 원인으로 지목되는 각종 인증기술들의 문제들을 살펴보고 안전과 편의를 담보할 수 있는 새로운 기술을 제시하고자 한다. II. 기존 인증 기술의 현황 인증은 식별과 검증으로 이루어진 일련의 과정이다. 여기서 식별은 일반적으로 특정된 ID를 이용한다. 그리고 이 ID는 사용자 인터페이스나 기기간 데이터 통신을 이용하여 입력되고 제출될 수 있다. 키보드로 입력되는 문자의 나열일 수도 있고 NFC, 적외선 통신 또는 블루투스를 통하여 기기에서 기기로 전송될 수 있다. 보안을 유지하기 위하여 이 ID를 숨기거나 해독하기 어렵게 하는 방법이 이용될 수도 있으나 핵심적인 보안은 검증 기술에 더 많은 의존을 하게 된다. 왜냐하면 식별에서 보안을 지나치게 강조하면 식별 자체가 어려워지므로 서비스에 대한 사용자의 접근을 제한하는 부작용이 발생할 수 있기 때문이다. 아래에서는 검증 기술들에 대하여 고찰하고 문제의 원인을 분석하여 새로운 기술의 요건을 도출하고자 한다. II.1 종류와 특징 비밀번호 인증 비밀번호 인증은 재사용 및 반복시도 공격으로부터 안전하지 않다는 것이 RFC_1334 표준에 명기되어 있다. (참고문헌: Network Working Group IETF문서 RFC 1334.). 그럼에도 불구하고 가장 광범위하게 이용되는 인증방식이다. SMS 인증 SMS인증은 일회용 비밀번호를 문자 메시지로 전송하고 이를 다시 제출 받는 방식이다. 그러나 문자 메시지는 악성코드에 의하여 탈취되거나 유심 스왑 공격에 의하여 제3자에게 전송될 가능성이 높다. 때문에 미국 전자표준원(NIST)는 SMS인증의 사용을 더 이상 권고하지 않을 것임을 발표하였다. (참고문헌: NIST Digital Identity Guideline Draft Special Publication 800-63-3) OTP 인증 OPT 인증은 일회용 비밀번호 인증을 통칭한다. 다만 SMS를 이용한 인증은 위에서 언급하였으므로 휴대용 OTP 발생기에 대하여만 설명하고자 한다. 휴대용 OTP 발생기는 네트워크에 연결되지 않은 기기에서 일회용 비밀번호를 생성하므로 기기 자체가 해킹될 염려는 거의 없다. 다만 사용자의 편의성과 비용 측면에서 광범위한 확산과 적용에 한계가 있다. 또한 해킹 위협이 매우 낮은 것은 사실이나 입력과정에서 키보드를 사용하는 제약으로 인하여 악용의 가능성은 존재한다. 일회용 비밀번호가 최소 시간의 유효성을 유지하므로 이 시간동안 재사용되는 것을 차단하는 것이 용이하지 않을 수 있다. 또한 발생기를 분실하는 경우에는 악용의 위험이 더욱 높아진다. (참고문헌: 위키디피아 https://en.wikipedia.org/wiki/One-time_password) PKI전자서명 인증 일반적으로 Public Key Infrastructure는 디지털인증서를 발급하는 기관과 인증서에 대한 관리 규약 및 전자서명을 생성하고 검증하는 프로세스를 포함하는 개념이다. 즉 단순히 암호화와 복호화에 적용하는 비 대칭 암호화 알고리즘만을 제한적으로 의미하지는 않는다. (참고문헌: 위키디피아 https://en.wikipedia.org/wiki/Public_key_infrastructure#Criticism) 비 대칭 키 기반의 암호화 기술은 데이터 보호 기능이 매우 강력하여 인증과 전자거래에 널리 이용되고 있다. 다만 공개키 기반 구조는 사용자가 인증서와 함께 개인 키를 항상 소지하여야 하며 유출에 대한 보안도 잘 유지해야하는 부담이 잇다. 즉 사용자는 스스로 개인 키와 비밀번호를 안전하게 관리하여야 한다는 전제가 있다. 이것은 매우 불공평하고 억지스러운 요건이다. 왜냐하면 항상 온라인에 연결된 기기를 사용하는 일반 사용자가 스스로 해커로부터 개인 키를 안전하게 보호한다는 것은 사실 상 불가능기 때문이다. 이러한 이유로 개인 키를 암/복호화하는 비밀번호를 점점 더 어렵게 만들도록 강요할 수밖에 없다. 뿐만 아니라 키보드 해킹을 방어하기 위하여 추가적인 프로그램을 설치하고 수시로 업데이트해야 하는 상황에 이르렀다. 따라서 사용자의 만족감은 매우 낮아지고 결국 한국에서는 공인인증서 기반 전자서명 인증 제도에 대한 퇴출 여론이 강렬하게 대두되었다. 생체인증 생체인증 기술은 키보드 사용이 배제된 것처럼 보이지만 생체정보를 등록하기 전에 다른 주 인증 수단으로 먼저 검증되어야 하므로 키보드의 문제로부터 여전히 자유롭지 못하다. II.2 문제점 요약 살펴본 바와 같이 현재까지의 모든 인증 기술들은 키보드를 이용하여 문자열을 입력하는 과정을 포함하고 있음을 알 수 있다. 이러한 이유로 입력과정에서 비밀 값이 탈취될 위험이 높고 탈취된 이 값은 다시 키보드를 이용하여 쉽게 악용될 수 있다. 또한 짧은 문자열은 프로그램을 이용하여 비밀 값을 알아내는 크랙이 용이하다는 약점을 피할 수 없다. 키보드는 세계 표준이 공개되어 있을 뿐만 아니라 인터넷 사용자보다도 더 많은 기기가 이미 사용되고 있으므로 이를 제거하거나 표준을 변경하는 것은 사실상 불가능에 가깝다. 그러므로 인증 기술이 키보드를 사용하고 있다면 해킹으로부터 안전한 보안 성능을 제공하는 것이 현실적으로 불가능하다. NIST를 비롯하여 사이버 보안을 다루는 모든 기관과 서비스 제공자들은 키보드 입력의 문제점을 잘 알고 있다고 판단된다. 그 결과 최소 2FA 즉 이중 인증을 사용하도록 권고하고 있다. 그러나 이중 인증은 사용자에게 번거로움을 강요하여 서비스의 만족감을 저하시키는 문제가 있다. 또한 이중 인증이 보안 강도가 2배로 증가한다고 신뢰할 근거가 없고 안전을 담보하기에 충분한 보안 강도를 제공하는 것인가에 대한 증거도 없다. 이것은 단지 사용자와 공격자에게 추가적인 번거로움을 동시에 강요하는 것에 불과하다. II.3 새로운 기술의 요건 보안 강도를 강화하고 동시에 사용자의 편리성을 충족하기 위하여는 아래의 3가지 요건을 충족하는 기술의 개발이 필요하다. 첫째, 기존 인증 기술들의 공통적인 문제로 대두되는 키보드를 이용한 팩터의 입력을 제거하는 방법이 필요하다. 둘째, 다양한 인증 기술들을 중첩적으로 적용하면 사용자의 편의성이 낮아지므로 다중 팩터를 한번의 과정에서 검증할 수 있는 새로운 알고리즘이 필요하다. 셋째, 전자거래를 안전하게 수행할 수 있도록 기밀성, 무결성 및 부인불가로 요약되는 전자서명의 최소 기능을 충족하는 것도 반드시 필요하다. 본 백서에서 이와 같은 3가지 핵심 요구사항을 완전하게 충족하는 인터페이스와 알고리즘과 전자서명 기능으로 구성된 새로운 인증기술 패스콘의 세부 사양을 제시한다. #패스콘 #백서 #패스콘기술백서 #PASSCON #비밀번호 #PKI #OTP #생체인증 #SMS
'코인'인지 뭔지 핵쉽게 정리해dream (2)
옷...오오옷!!! 빙글러들의 대박적인 반응에 리얼 깜짝 놀란 거임ㄷㄷㄷㄷ 지난주에 코인에 대해서 쉽게 설명해드리는 카드를 하나 썼음 (↑ 이건데 안 보신 분들은 꼭 보셔야 함. 그래야 이번 카드도 이해할 수 있음) 근데 나같은 놈이 쓴 글이 뭐라고ㅜㅜ 여러분들이 하트와 덧글과 팔로우를 폭발시켜준 거임ㅠㅠ 원래는 노잼인 내용이라 쓸까 말까 고민했는데 이런 반응이면 더 써도 되는 거 맞음..? 그린라이트인거임..? 삐빅- 그린라이트입니다. ㅋㅋㅋㄳㄳ 원래 잘한다 잘한다 해주면 개도 신나서 춤추는 법임 여러분들의 잘한다 잘한다에 힘입어서 2편도 신나게 써보겠음 먼저 지난화 요약 들어감. (무슨 드라마 같음) *1편 요약 - 코인은 블록체인 시스템 상에서 존재한다. - 블록체인이란? 데이터를 블록 형태로 저장한 후, 각 블록에 해당하는 코드를 발급. 블록의 코드를 체인처럼 연결해서 긴 데이터 사슬을 만들고 그 데이터 사슬을 전세계의 수많은 사람들이 함께 기록해나가고 보존하는 시스템! 요기까지가 1편에서 다뤘던 내용의 요약본임. 그래서 블록체인 시스템상의 데이터는 조작도 불가능하고, 시스템을 운영하는 대표자가 없어도 된다는 얘기까지 했었음. 여까지는 뭔가 깔끔하게 이해하고 넘어간 것 같았음. 근데 마지막에 싸늘하게 꽂히는 비수같이 날카로운 질문이 날아왔음 와씨 완전 핵심적인 내용에 대한 질문임ㄷㄷ 대박인데? 이렇게 날카로운 질문 누가함..?? 은 나였음. 칭찬의 의미로 하트, 팔로우 많이들 눌러주셈. 자 오늘 할 이야기는 저 질문에 대한 답변. 즉, [블록체인 장부를 누가, 무슨 목적으로 써주고 있는 것인가]에 대한 이야기임. 님들도 너무나 궁금할거임? 완전 알고싶지 않음? 그르지 마요... 알면 좋잖아 빠삭한 배경지식 없이도, 재밌게 읽다보면 이해되게끔 최대한 핵쉽게 설명해드리겠음! 블록체인의 참여자들 - 블록체인 장부는 누가, 왜 써주는 것인가? 블록마다 코드 박고, 블록끼리 연결하고, 장부 저장하는 귀찮은 짓을 지금도 수많은 사람들이 하고 있음. 블록체인이 좋다는 건 알겠는데 그걸 굳이 내 시간을 들여서 해야함? 하고 있는 사람들은 뭐임? 호구임?? 여러분들의 이해를 돕기 위해, 리얼 호구아저씨의 가슴 아픈 이야기를 예로 들어드리겠음. 안구건조증 있는 분들도 눈가 촉촉해 질 만큼 안구 습도 높은 이야기니 잘 봐주셈 #낚임 내가 복수해줄까?ㅋㅋ 호구아저씨는 정마담과 데이트를 하다가 솔깃한 얘기를 듣게 됨. 정마담이 도박을 하다가 크게 잃었는데, 상대 플레이어들 실력이 장난 아니라는 거임. 평소 도박도 좋아하고, 정마담에게 잘보이고 싶었던 호구아저씨는 자기가 복수해준다고 큰소리를 침 #탈탈털림 뜻대로 안된다... 총알이 적어서 그런가? 하지만 상대 플레이어들은 정마담이 미리 섭외해둔 타짜들이었던 거임ㄷㄷㄷ 호구아저씨 정도는 한손으로 썸남이랑 카톡 하면서도 탈탈 터는 수준임. 호구 아저씨는 기대와 다르게 탈탈 털리자 기분이 매우 언짢아짐. 기세 좋게 이길만~ 하면 돈이 부족해서 지는 것 같은 느낌임. 복수심에 불탄 호구 아저씨는 돈을 좀 더 구해와서 복수하기로 다짐. 정마담에게 돈을 빌리러 감. #돈좀빌려줘 제가... 비트코인 50개 빌려드릴까요?? 정마담은, 호구아저씨가 돈을 잃어도 자기가 심어둔 사람들이 따는 것이기 때문에 손해 볼 게 없음. 그래서 비트코인 50개를 한번에 빌려주기로 함. (비트코인 50개 : 현시세로 약 5억ㄷㄷ) #기세등등 도박이 뭐야? 응? 도박은 파도야! 올라가면 내려가고, 내려가면 다~쒸 올라 오는거야! 이자식들 다죽었어!!! 정마담에게 빚만 늘어가는 것도 모른 채 호구 아저씨는 들뜨기 시작했음 ㅜㅜ 자, 이제 정마담이 호구아저씨에게 50 비트코인을 송금할 차례임. 맞음. 이 거래 정보를 누군가가 블록으로 만들어서, 블록체인 시스템에 연결해줘야 되는 거임 새로운 거래가 발생했습니다. 이 거래를 블록체인에 기록해주세요~ 여러분들 잘 알다시피, 블록을 연결하려면 코드를 발급 받아야 함. 근데! 코드를 발급 받으려면 6 가지 정보가 필요함 으응..? 여섯 가지...? 거래 정보 넣으면 자동으로 코드 나오는거 아녔어? 핵쉽게야... 이거 뭐야? 전엔 이딴 얘기 읎읐쯔느... 워워 릴렉스 하셈; 이 부분만 포기하지 않으면 진짜 다 이해할 수 있음 여기가 비트코인/블록체인의 하이라이트임 앞 카드에서, 거래 정보를 입력하면 거래 정보에 따라 코드 값이 발급된다고 했음. 그리고 정보가 아주아주 조금만 달라도 다른 값이 나온다고 했음. 다 맞는 말임. 근데!! 사실은!! 자세히 보자면!! 여기서 '거래의 인증코드'가 그대로 '블록의 인증코드'가 되는 게 아님 '블록의 인증코드'를 받기 위해선 '거래의 인증코드' + 5 가지가 더 필요함 검정색 정보 -> 자동으로 주어짐 분홍색 정보 -> 기록자가 입력해야 함 코드 생성기에 저 정보들이 들어가야 블록의 인증코드가 발급되는 거임 5개는 자동으로 주어지는 거고... 하나만 입력하면 되네? 쉬워보이니 쫄지말고 하나씩 보는 거임ㅇㅇ [블록의 코드생성에 필요한 정보] 1. 거래의 인증코드 : 거래정보에 따라 자동으로 주어짐. 걱정ㄴㄴ 2. 소프트웨어 버전 : 자동기록됨 고민ㄴㄴ 3. 블록 작성 시각 : 알아서 기록됨 신경 ㄴㄴ 4. 앞 블록의 코드 : 앞 블록이면 이미 정해져 있는 거자나 고민 ㄴㄴ 5. 난이도 조건 : 응? 6. 정답 : 응??? 조건? 정답? 처음보는 얘기가 튀어나와서 많이 놀랐죠? 많.이.놀.랐.을 여러분을 위해 핵쉬운 설명 빠르게 시작하겠음. 자동으로 주어지는 것 외에 뭘 입력해야 하나 하고 봤더니 [정답]을 입력해야 한다고 함. 뭐에 대한 정답이냐면, 코드 발급 받을 때마다 코드 생성기가 내는 문제에 대한 정답임 근데 얘가 내는 문제가 완전 막장임ㅋㅋㅋㅋㅋㅋㅋㅋㅋ 얘가 내는 문제의 예시를 보자면 이러함 (원래는 64자리 코드이지만, 쉬운 설명을 위해 4자리로 예를 들겠음) 이게 개노답인게, 정답란에 숫자를 넣었을때 나오는 값이 매번! 규칙이! 전혀! 없음 1을 넣었을 때 무슨 값이 나올 지는 아~무도 모름. 2를 넣었을 때 무슨 값이 나올 지도 아~~~무도 모름. 정답란에 그냥 하나씩 다 넣어봐야 아는 거임. 언제까지? 운좋게 쟤가 말한 조건(ex : 4500보다 낮은 값)이 나올 때까지!! 코드 발급을 시작하지 그래서 기록자는 정답을 하나씩 넣어 보면서 찾아야 함. 1을 넣어봄 9998이 나옴. 4500보다 높으니 탈락 2를 넣어봄 5281이 나옴. 4500보다 높으니 탈락 ... 534을 넣어봄 (멘탈 나감) 6710이 나옴. 4500보다 높으니 탈락 ... 계속 넣어보는 중. 2312 까지 왔음 4010이 나옴!!!!!! 4500보다 낮으니 코드 인정임!! 드디어 성공한거임!! 이 블록의 인증코드 조건에 맞는 4010이 나왔음!! 이 블록은 이제 정마담이 호구한테 50BTC 준다는 거래정보를 아래와 같이 블록화해서 체인에 걸 수 있게 됐음 난이도 조건은 [4500보다 낮은 값이 나오도록 하는 정답을 찾아라] 였고 그 정답은 2312 였음. 정답인 2312를 넣어서 얻은 4010이 이 블록의 인증코드로 박히게 됨 그래서 블록체인 시스템에 코드 달린 블록으로 이어질 수 있게 됨! 아니 블록체인 블록생성 과정 보니까 더 이해가 안감ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ이걸 왜 해주고 있는거임????? ㅋㅋㅋㅋㅋ이거 진짜 사람이 할짓이 아닌데???? 블록체인이고 나발이고... 정답란에 숫자를 넣으면 값이 하나씩 튀어나오는데, 아무 규칙도 없어서 아무 값이나 튀어 나옴; 그래서 숫자 하나씩 하나씩 넣어보고 조건에 맞는 값이 튀어나와야 코드로 인정받는 거임;; 이런 뻘짓을 하면서 블록 생성해주는 사람들은 뭐임?? 호구임? 변태임? 누가 따로 돈이라도 줌?? 어휴 돈이면 또 얘기가 달라지죠 헤헤 ^^; ㅇㅇ 돈 줌 물론 현금을 주는 건 아니고, 블록체인 상 보상체계에 따라 보상을 줌. 비트코인 시스템 상에선 다음 두가지로 보상을 해줌 1. 거래당사자가 지급하는 비트코인 수수료 (거래마다 다름) 정마담 : 호구에게 50 비트코인 가도록 블록생성해주는 분께는 0.001 비트코인 드립니다 ^^ 2. 블록 생성자에게 시스템이 지급하는 비트코인 (현재 블록당 12.5 비트코인) 시스템 : 정마담이 호구에게 50 비트코인 주도록 블록생성 완료한 사람이군? 자 여기 보상으로 12.5비트코인ㅇㅇ 이렇게 블록을 만들어주고 보상을 받는 걸 뭐라고 한다? 이게 바로 채! 굴! 이게 그 채굴인가 뭔가 하는 그거였어??? 비트코인 채굴한다~ 채굴한다~ 하는데 이게 뭔 말인지 궁금한 분 많았을 거임. 이때까지 우리가 얘기한 '블록의 생성 과정'을 수행하고 '보상'을 받는 것이 바로 채굴임!! 1) 블록화된 거래기록이 시스템에서 인정받으려면 블록 코드가 필요하다. 2) 블록 코드가 발급되려면 6가지 정보를 넣어야 한다. (거래의 인증코드, 소프트웨어 버전, 블록 작성시간, 앞 블록의 코드, 난이도 조건, 정답) 3) 6가지 정보 중 기록자가 찾아내야 하는 정보는 '정답' 뿐, 나머지는 주어진다. 4) 조건에 맞는 값이 튀어나오게 하는 '정답'을 찾아내면 5) 튀어나온 값이 '코드'가 되어서 6) 블록이 블록체인에 이어질 수 있게 된다. 이 힘든 과정을 수행하면서 블록을 생성한 사람은 보상을 받게 됨 (비트코인 시스템에서는 비트코인이 보상) 그리고 이 행위를 '채굴한다'라고 하는 것. 그리고 이렇게 '채굴'에 참여하기 위해서는, 비트코인 블록체인 시스템 상에 참여하면서 장부를 계속 업데이트 해야함. 그래서 완성된 장부를 계속 똑같이 쓰면서 업데이트 하는거임!! 자, 카드에서 처음에 얘기한 질문이 이제 해결됨 할 일이 없어서가 아니라, 채굴에 참여해서 보상을 받기 위해 장부 업데이트에 참여하는 거였음. 물론 이 채굴 보상은, 블록체인 시스템이 받아들여지지 않으면 아무 의미 없음. 블록체인과 비트코인이 아무런 인정을 받지 못했을 때의 비트코인의 가치와, 블록체인과 비트코인 시스템이 인정받고 가동될 때의 비트코인의 가치가 매우 다를 것임. (비트코인 시스템의 가치에 대해서는 별 관심이 없고, 이 코인을 현금을 주고 사려는 사람이 많아서 채굴하려는 사람도 물론 매우 많음. 아까 블록코드 한번 발급 성공하면 12.5 비트코인 준다고 했는데, 12.5 비트코인이면 현재 원화로 교환가치가 1억2천만 원쯤 됨ㄷㄷㄷ) 그럼 이제 여러분은 또 질문이 생길 거임 뭐? 1억 2천? 일어어억이처어어언? 그럼 나도 할래!!! 나도 하고 우리 엄마도 하고 할아버지도 하고 다 할래! 핵쉽게 너도 해라! 그렇게 좋은데 왜 채굴 안하는 거임? 그리고 거래의 인증코드가 자동으로 발급되는데, 그걸로 그냥 블록의 인증코드 바로 만들면 안됨? 저 정답찾고 난리하는 과정을 거쳐서 새로 블록의 인증코드를 받도록 하는 이유가 뭐임? 아 그리고 정답을 두명이 동시에 찾으면 어떻게됨? 찌찌뽕 함? 와 역시 또 핵심을 찌르는 질문임ㄷㄷ 이 질문에 대한 답도 핵쉽게 알려드리고 싶지만, 일단 오늘은 여러분이 '채굴이 무엇인가'를 이해하는 엄청난 일을 한 것으로 충분함. 채굴을 이해한 것 만으로 여러분은 블록체인에 대한 이해가 한층 깊어진 거임. 블록체인이 뭔지 채굴이 뭔지 몰라도 일상생활 하는 데 지장은 없지만 여러분들은 검사와 도지사를 거쳐 현재 당대표인 사람보다 많이 알게 된 거임 ^^ 세상의 변화에 대해, 일단 알고 나서야 판단을 할 수 있는 법임ㅇㅇ 무튼 다음 이야기에서는 - 채굴하면 돈주는데 안하는 이유 - 채굴하는 과정이 저렇게 지랄맞...이 아니라 복잡한 이유 - 같은 블럭을 동시에 채굴하면? 등등의 이야기를 해볼까함 물론 읽어줄 사람이 있다면 말임ㅜㅜ 거 사람 참 매정하네... 무튼 제가 쓴 두개의 카드를 읽으신 분은 1편 : 블록체인의 개념과 의의 2편 : 블록체인 시스템을 가동시키는 '채굴' 이 두가지를 이해하시게 된거임. 여러분의 관심을 먹고사는 저는 다음 카드로 또 돌아오겠음! 여기까지 오신 분들 있음? 생존자님들은 하트, 덧글, 팔로우 부탁dream!