Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

SECURECOMM (RSA)


Information sur la source

Catégorie :Sécurité & Cryptage Source .NET ( DotNet ) Classé sous : rsa, aes, sécurité, cryptage, communication Niveau : Initié Date de création : 11/03/2006 Date de mise à jour : 16/03/2006 11:51:40 Vu / téléchargé: 9 635 / 702

Note :
10 / 10 - par 2 personnes
10,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (4)
Ajouter un commentaire et/ou une note

Description

Cliquez pour voir la capture en taille normale
Ce code est une librairie qui fournit 2 classe, SecureTcpListener et SecureTcpClient.
Ces classes ont pour vocation d'etre similaire aux classes bien connu TcpListener et TcpClient mais un peu épurées, et créer une connexion TCP/IP sécurisée avec RSA et ensuite 100% encodé en AES.
En gros, on instancie un SecureTcpListener, on Start, on fait Accept et lorsqu'une connexion arrive, Accept se débloque et renvoie un SecureTcpClient. Ce SecureTcpClient est en fait connecté a l'autre bout par un autre SecureTcpClient, et leurs particularitée est que leur communication est cryptée en AES, cet securisation est completement transparente pour l'utilisateur. La clef utilisée pour le cryptage et le décryptage AES a été échangée de façon tout aussi sécurisée par une clef publique RSA générée et envoyée préalablement par le SecureTcpListener, et ce de manière toute aussi transparente pour l'utilisateur.

L'archive contient la solution qui permet de compiler la librairie SecureComm, et une autre solution qui contient 2 projets de test, client et serveur pour vous permettre de voir avec quelle facilitée on peut créer un canal d'échange d'information completement sure.

La screenshot est un schéma explicatif pour ceux qui ne connaissent pas bien le principe, j'espère qu'il sera le plus claire possible.

 

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Historique

16 mars 2006 11:51:41 :
mise a jour du texte explicatif

Commentaires et avis

signaler à un administrateur
Commentaire de sebseb42 le 11/03/2006 03:24:01

Je précise, en gros pour le code c'est un Start et un Accept pour le serveur, un Connect pour le client, et ensuite tout les Send et Receive sont cryptés dans les deux sens, l'utilisateur (vous) n'a strictement rien a faire.

J'espère que cet code poura être utile à tous ceux qui se sont toujours demandé comment implementer ce genre de choses, bien souvent redouté par les débutant pour sont apparente complexité mais en faite ô combien simplifié par le Framework .NET 2.0

Merci Bill :)

signaler à un administrateur
Commentaire de wizad le 11/03/2006 12:01:26

Je n'ai pas encore tester mais le traitement asynchrone des connexion avec la possibilité d'avoir plusieur client est il possible?

signaler à un administrateur
Commentaire de sebseb42 le 11/03/2006 12:39:21

Attention, je rappel que le SecureTcpListener n'est pas une classe qui gère un serveur a part entière, il ne gère pas lui même le pool de thread/sockets avec events et tout le tremblement, mais ceci dit, il est evidement possible d'avoir plusieurs client avec un seul SecureTcpListener, c'est a vous d'implementer la façon dont vous gérez vos thread/sockets.

La fonction Accept de SecureTcpListener est bloquante, quand elle se débloque, elle renvoie un SecureTcpClient qui a la faculté de pouvoir communiquer en crypter (ou non) avec un autre SecureTcpClient. Lorsque la fonction Accept se termine, le SecureTcpListener est evidement toujours actif et opérationnel. Il vous suffit d'effectuer le traitement adéquat sur votre SecureTcpClient (l'envoyer dans un thread par exemple) et ensuite de reboucler sur le Accept du SecureTcpListener, ce qui bloquera une fois de plus, et au débloquage vous renverra un nouveau SecureTcpClient, avec un clef de session differente (et evidement une pair de clef publique/clef privée est générée pour chaque client).

J'espère avoir répondu au mieux à ta question.

signaler à un administrateur
Commentaire de sebseb42 le 11/03/2006 12:42:55

Pour répondre plus succintement à ta question, non ce n'est pas de l'asynchrone, car Accept est bloquante, mais oui, il est possible d'avoir plusieurs client.

Le code est disponible, a toi d'implémenter BeginAccept et EndAccept si tu veux, ca pourrait être pas mal :) C'est aussi ca l'idée d'un code ouvert, l'amérioration :)

Personnellement je n'utilise jamais Begin* et End* mais ca peux être bien de l'implémenter car il en faut pour tout le monde.

On pourrait même après mettre mon code dans la lib CS :P

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

cryptage [ par zeusdsl ] bonjour je debute le C depuis peu et je faire un prog de cryptage selon vigenereles codes sources que j ai eu sur d autres sites sont un pe OLE ou communication entre soft ?? [ par cedricp16 ] est t'il possible de faire passer des valeurs et des données entre deux applications disctinctes du style OLE ?Merci de me répondre ! je susi désolé d Communication avec un site web [ par d0d0 ] Bonjour.J'ai une application qui a besoin de communiquer avec un site web Php/Mysql.Quelle est la meilleur solution pour envoyer/récupérer des données Cryptage décryptage [ par maevacmoi ] Hello !Je dois créer pour aujourd'hui 15h une fonction C# permettant d'encrypter (et décrypter) un string avec une clef donnée (cf ci-dessous). J'ai t Cryptage ... [ par maevacmoi ] Hello !Je voudrais faire une fonction toute bête qui crypte un string selon une clef donnée et renvoi un string crypté. Et une autre fonction qui reço Libraire de Codage RSA en Open Source [ par finarfin95 ] Je suis à la recherche d'une libraire open source de cryptage RSA.Si vous savez ou trouver, merci de faire suivre... Cryptage asymetrique [ par stronglou ] LoulouBonjour,Quelqu'un pourrait-il me dire comment fairepour crypter un fichier ou autre en utilisant le cryptage asymétrique (si p Cryptage Decryptage à la volée [ par jdaviaud ] Salut tout le mondej'ai un programme qui se base sur un fichier Ini pour sa configuration.Ce que je veux, c'est lorsqu'il y a une modif de la configur Securite et mise a jour des données [ par aeled ] lors d'une mise à jour d'une base de données via un formulaire, la sécurité est telle qu'elle n'accepte pas les balises du type <br>il se produi Projet de sécurité [ par UniCyclon ] Salut,Je représente Sy-Labs, une assoc globale basée sur les technologies informatiques, et plus particulièrement Subria, qui a pour but d'augmenter l


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,390 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.