Spark kern en Android Garage Opener. Minus de Spark-wolk. (10 / 19 stap)

Stap 10: Beveiligd communicatiekanaal het platform


Het lastigste onderdeel van dit project was het ontwerp van een beveiligd kanaal, dat zou tegen Replay en Man-In-The-Middle aanvallen. Ik denk dat ik was in staat om dit te bereiken, en ik de oplossing geïmplementeerd op een manier die het zeer gemakkelijk maakt om opnieuw te gebruiken in andere vonk Core project.

Deze stap geeft een overzicht van hoe deze bibliotheek is ontworpen en gebruikt.

SecureChannelServer

Alle van de crypto primitieven en het protocol van de instelling sessie worden geïmplementeerd door de SecureChannelServer. De uitvoering delegeert feitelijke communicatie en berichtverwerking op CommunicationChannel en SecureMessageConsumer interfaces. Dit zijn de enige twee interfaces die moet worden geïmplementeerd door een gebruiker van deze bibliotheek.

Merk op dat de enige openbare methode in die deze klasse heeft loop. Het is bedoeld om te worden aangeroepen vanuit de belangrijkste loop -methode in application.cpp, bediend door de Spark Core libraries.

De details van de werking van deze klasse zijn in een volgende stap.

CommunicationChannel

Wordt gebruikt voor een specifieke communicatie-aanpak, zoals TCP/IP over WiFi bijvoorbeeld implementeren. Het weet niets over coderen of decoderen van de gegevens. In plaats daarvan, zal SecureChannelServer deze interface gebruiken wanneer het moet lezen of schrijven van gecodeerde gegevens.

SecureMessageConsumer

Uitvoering ontvangt gedecodeerde berichten en reacties van de platte-tekst terug naar de SecureChannelServerzal terugkeren. Het is volledig neutraal of hoe het bericht werd gedecodeerd, hoe het werd ontvangen.

Dit ontwerp aanpak maakt het zeer gemakkelijk om te ontwikkelen en testen van de SecureChannelServer. Als je in de kern-firmware/bibliotheken/garage/tests kijkt, vindt u dummytest implementaties van beide interfaces, waardoor het mogelijk voor mij om te schrijven en debuggen van alle crypto code w/o eventuele behoefte aan hardware of zelfs netwerk.

WiFiCommunicationChannel Klasse

Behandelt de specifieke kenmerken van de kern verbinden met WiFi, een TCP/IP-server op haven 6666 beheert en beheren van clientverbindingen. Dit is de klasse die gepingd de testserver elke minuut om te controleren van de gezondheid van de verbinding.

Garage Klasse

Dit is onze implementatie van de SecureMessageConsumer -interface. Het fungeert als de garage deur controller, behandeling van de bijzonderheden van de hardware van de schakelaar te activeren, en het lezen van de deur sensor.

Raadpleeg het UML-diagram voor meer informatie.

Gerelateerde Artikelen

Android Garage deuropener - geen Andriod programmering, No solderen vereist.

Android Garage deuropener - geen Andriod programmering, No solderen vereist.

Update: nu kunt u uw eigen aangepaste menu om te openen de garagedeur en schakelaar Relais aan en uit met behulp van pfodDesigner . De gratis pfodDesigner alle code zal genereren voor u en pfodApp zal het kleurrijke menu tonen op uw mobiele telefoon.
Altoids Garage Opener Mod

Altoids Garage Opener Mod

hebt u ooit gewenst dat u had een meer stijlvolle manier om uw garagedeuren openen? Mijn vader kocht een nieuwe pick-up, maar het nog niet over de ingebouwde Homelink knop net als onze andere auto's. Zijn oorspronkelijke plan was onderdeel van de voo
Android automatische open Elektrisch deurslot met QR code scan

Android automatische open Elektrisch deurslot met QR code scan

deze eenvoudige tutorial, laten zien, hoe maak je een eenvoudige elektrische deuropener.Geen knoppen nodig.Wanneer u app opent, de automatische telefoon verbinden met uw arduino via bluetooth,en het scannen van de QR-code, opent de deur voor 3 sec en
Open Source Garage deur Controller / Monitor

Open Source Garage deur Controller / Monitor

Bewaking en beheersing van uw deuren van de garage van het web (met inbegrip van mobiele apparaten) via een Raspberry Pi.Dit project biedt software en hardware installatie-instructies voor de bewaking en de controle van uw garagedeuren op afstand (vi
Virtuele Open teken

Virtuele Open teken

Dit Instructable is mijn project van de YuKonstruct Spark Core bouwen nacht!In dit Instructable leert u hoe u een vonk kern om een schakelaar die zijn standpunt naar een website posten te maken. We zijn van plan om dit te gebruiken bij onze YuKonstru
Deuropener van de Garage van de Raspberry Pi

Deuropener van de Garage van de Raspberry Pi

Hallo iedereen!Dit instructable wordt uitgelegd hoe de installatie van een Raspberry Pi om te openen mijn garagedeur met behulp van een smarthphone. Terwijl dit is al eerder gedaan, dacht ik dat ik mijn oplossing post. Dit was mijn eerste hardware pr
Zet USB Debugging Mode op Android 4.2/4.3

Zet USB Debugging Mode op Android 4.2/4.3

als u onlangs uw apparaat hebt bijgewerkt naar Android 4.2 Jelly Bean of een nieuw apparaat met 4.2 of hoger vooraf geïnstalleerde hebben gekocht, wees niet verbaasd als u vindt dat de "Ontwikkelaar opties" ontbreekt.Het inschakelen van ontwikke
Garage deuropener

Garage deuropener

Gebruik een Raspberry Pi en een smartphone (of laptop) om te openen, sluiten en bewaken van een garagedeur. Openen en sluiten van de deur veilig met behulp van zelf-ondertekende certificaten geïnstalleerd op familieleden mobiele telefoons maken Als d
Deuropener van de Garage van de "speler 2"

Deuropener van de Garage van de "speler 2"

Ik ben niet alleen een gamer, ik ben een liefhebber van gaming. Ik ben geboren op hetzelfde jaar als Pong, ik Bekijk games op Game Vortex en PlayStation geïllustreerd en ik nog gemaakt en geleerd een Intro tot Video Game ontwikkeling cursus op L.S.U.
Garage vingerafdruk deurslot

Garage vingerafdruk deurslot

Dit is een elektronische garage deuropener ontworpen rond een vingerafdrukscanner SparkFun GT-511C1R. Er is al een zeer goede instructable door gebruiker nodcah dat hoe beschrijft te bouwen bijna dit exacte apparaat, waaruit ik nam 99% van mijn inspi
Pine64 als een mediacenter van Kodi (op Android platform)

Pine64 als een mediacenter van Kodi (op Android platform)

Hier zal ik u praten over hoe ik ging over het opzetten van mijn Kodi mediacenter op een Pine64. Totdat een meer geoptimaliseerde versie van de Kodi software beschikbaar is, is de gemakkelijkste (en volledig werkend) methode net om het te installeren
IPhone Garage deuropener (Updated!)

IPhone Garage deuropener (Updated!)

UPDATED!ik overgeschakeld naar een 12 volt Relais, een vak project toegevoegd en bevorderde het auto relay uit recept. Vreugde.Hallo.Ik schaam me een beetje van deze hack, aangezien het meestal maakt gebruik van bestaande technologieën, maar ik-it an
Bijlage, een Arduino Yun Garage Monitor

Bijlage, een Arduino Yun Garage Monitor

Links thuis en niet zeker of u hebt uw garagedeur gesloten? U kunt met dit Instructable, gemoedsrust en beheren van uw deuren - overal, altijd!Dit project biedt een webportal waarmee de gebruiker om te controleren op de status van hun garage. Als de
Het installeren van een garagedeur opener in een dashboard

Het installeren van een garagedeur opener in een dashboard

Ik had een probleem... We hebben een ambachtsman opener voor de deur van de garage, en twee afstandsbedieningen. Het probleem is dat de afstandsbedieningen verdwalen gehouden, want ze geen clips op hen hadden. Mijn vrouw de auto hebben niet een ingeb