IoT/News



컨테스트 참가하기: http://wiznetian.com/


IoT 디바이스를 활용한 컨테스트 정보입니다. 여러분의 아이디어를 마음껏 발휘해 보세요!




참가하시면, 아래의 보드를 활용해 아이디어를 구현하시면 됩니다.


1. WizArduino: 아두이노 제로(M0+)와 이더넷 실드를 하나의 보드로 사용하실 수 있습니다.

2. WizArduino WiFi: 아두이노 메가와 WiFi 실드(WizFi310)가 하나의 보드에 구현되어 있습니다.

3. Security Shield: SSL/TLS를 지원하는 이더넷 실드입니다. 사용하시려면 별도의 MCU(아두이노)가 필요합니다.





0 0

IoT Open House/ThingPlug


ThingPlug Bridge는 위 LoRa 서비스에서 (A) 위치에 해당하는 툴이다.


원래는, (B)에 해당하는 서비스 App 서버가 ThingPlug와 연동해 LoRa 디바이스의 데이터를 가져가고, 제어명령을 내려야 한다.

하지만, 기존의 App 서버를 변경하지 않고 LoRa 서비스를 사용하고 싶은 경우 ThingPlug Bridge를 활용하면 가능해진다.


ThingPlug Bridge 본 글에 첨부되어 있다.


ThingPlug_Bridge (2).z01

ThingPlug_Bridge (2).z02

ThingPlug_Bridge (2).zip



ThingPlug Bridge 의 역할


ThingPlug Bridge는 ThingPlug의 subscription 기능을 활용해서 만들어졌다. ThingPlug 포털의 ID와 PWD로 로그인을 하게 되면 아래와 같이 User Key를 받아오게 된다.

(User Key는 App이 ThingPlug에 접근하기 위한 권한이다.)


이 User Key를 가지고 로그인한 계정에 있는 LoRa Device 리스트를 조회 할 수 있고, ThingPlug는 Device들의 데이터를 ThingPlug Bridge로 Push 해준다.


Bridge는 ThingPlug로 부터 Push 받은 데이터를 설정된 서버로 보내고, Log 파일로 남기는 역할을 하게 된다.




ThingPlug Bridge 사용방법


1. 로그인


로그인하기 전, 접속하고자 하는 ThingPlug 플랫폼의 주소와 Port 번호를 우선 입력한다.(테스트망, 상용망에 따라 이 주소가 다르다.)

그 후 ID와 PWD를 입력해 Login 버튼으로 User Key를 얻어온다.



2. 설정

APP EUI와 App Server 정보를 입력한다.

APP EUI: LoRa 서비스의 경우, SKT로부터 할당받게 되며, ThingPlug만 사용하는 경우 'ThingPlug' 그대로 두면 된다.

App Server: Push 받은 데이터를 다시 보낼 서버의 주소를 입력한다.



3. RUN

RUN!




4. 디바이스 리스트

ThingPlug 계정에 등록된 디바이스의 리스트를 확인할 수 있다.


5. 디바이스 제어

ThingPlug 디바이스를 제어할 수 있다. data 필드를 이용해 유저 데이터를 보낼 수 있는데, LoRa 디바이스는 extDevMgmt 명령에서만 가능하다.




6. App Server

위 설정에서 App Server로 설정된 서버로 실제 LoRa 디바이스가 보낸 데이터를 보내게 된다.(1234567890 x 4)





7. 데이터 로그

데이터의 Log는 'log\debug_log.txt'에서 확인할 수 있다.

0 0

Study/etc

OpenSSL에 대한 설명


https://ko.wikipedia.org/wiki/OpenSSL


OpenSSL은 SSL/TLS를 오픈소스로 구현한 것이다.



<SSL/TLS, HTTPS에 대한 설명 영상>



OpenSSL 사용하기


구글에서 검색해보면 OpenSSL 라이브러리로 공개하는 것과, 실제로 OpenSSL을 사용할 수 있는 컴파일 된 파일로 된 것들이 있다.


소스코드 레벨로 공개된 것들은

https://www.openssl.org/source/


컴파일 방법은 아래 Youtube를 따라하면 될 것이다.

<How to Compile OpenSSL on Windows10 x64 for Static Library>

위 방법으로 컴파일 시 필요 툴

- Perl 

- VC++




컴파일 된 파일로 SSL 사용하기

OpenSSL을 이용해 SSL/TLS를 사용하기 위해서는 이미 컴파일 된 파일로 다운로드 받는게 더 편하다.

https://indy.fulgan.com/SSL/



위 사이트에서 openssl-x.x.x-XXXXX-winxx.zip 형태의 파일을 다운 받는다. OpenSSL의 버전과 사용 PC의 환경(ex, windows 32bit, 64bit)로 파일을 선택한다.




본 예제에서는 openssl-1.0.2k-x64_86-win64.zip으로 진행했다.




다운로드 받은 파일을 적당한 이름으로 원하는 곳에 압축을 해제한다.(openssl-1.0.2k-x64_86-win64 -> OpenSSL)



환경 변수에 추가하기

압축을 해제한 후에는 해당 폴더를 '시스템 환경 변수'에 추가해야 한다.

'시스템 환경 변수'는 윈도우 어디에서든지 '시스템 환경 변수'에 있는 파일을 실행시킬 수 있도록 해주는 역할을 한다.

본 예제에서는 폴더 안에 'openssl.exe' 파일을 시스템 어디에서든지 사용할 수 있도록 하기 위해서 '시스템 환경 변수'에 추가해준다.



'시작'을 눌러 '환경' 이라고 검색하면 '시스템 환경 변수 편집'이 나온다. 여기서 '환경 변수(N)' 을 누르면 아래와 같은 화면이 나온다






'시스템 변수(S)'에서 'Path'를 편집하게 되면 오른쪽 화면이 나오게 되고, '새로 만들기(N)'으로 환경 변수를 추가할 수 있다.

이때 경로는 OpenSSL을 압축 해제한 경로를 설정한다.





실행해보기

실행되면 아래와 같이 프롬프트가 바뀐다.환경 변수가 추가 되었으면 명령 프롬프트에서 'openssl'을 실행시킬 수 있다.


OpenSSL>




OpenSSL 테스트

이제 OpenSSL을 사용해서 SSL/TLS를 쓸 수 있다.

한가지 예제로 www.google.com 에 접속하는 HTTPS Client 예제는 아래와 같다.


OpenSSL> s_client -connect www.google.com:443





'Study > etc' 카테고리의 다른 글

OpenSSL 설치 및 실행하기  (0) 2017.02.15
0 0

1 ··· 3 4 5 6 7 8 9 ··· 11
블로그 이미지

IoT 개발자 블로그이고 싶다.

1byte