La meilleure solution, comme cela a été dit, est d'obtenir un véritable plan d'hébergement Web qui autorise https. Cela ne devrait pas être trop cher, en fait il devrait même être possible de trouver un fournisseur gratuit pour fournir cela.
À défaut, quel est votre cas d'utilisation? Il semble que vous ayez à l'esprit un groupe d'utilisateurs défini pour votre site Web. Si tel est le cas et que vous n'offrez pas simplement un service de notification d'événements basé sur un abonnement à des personnes aléatoires sur Internet, envisagez de fournir la base d'une connexion `` sécurisée '' sur un canal différent.
Cela se produit pour moi, qu'obtenir le code sur leur machine par une autre source fiable (poster des CD par courrier postal et les informer par e-mail, simplement envoyer le logiciel en pièce jointe à un e-mail signé numériquement, etc.) vous permet de précharger le logiciel avec une clé publique cryptographique.
Vous pouvez alors négocier une connexion sécurisée via une méthode de connexion non sécurisée (telle que http) car le code déterminant si le serveur a déchiffré de manière satisfaisante les détails cryptés avec sa clé publique vit le client. Un flux de données d'application http "en clair" est le résultat, avec la ride que les données d'application elles-mêmes sont cryptées.
C'est beaucoup de problèmes et une méthode non standard. Vous rencontrez des problèmes de mise en œuvre car peu de personnes l'auront essayé pour vous conseiller, et de sécurité puisque peu de personnes en ont revu sa fiabilité *.
Le canal alternatif peut lui-même avoir des problèmes de sécurité. Le courrier pourrait-il être intercepté? Les fraudeurs pourraient-ils se faire passer pour votre organisation et envoyer leur propre version «sécurisée» de votre logiciel? Vos utilisateurs sont-ils suffisamment avertis pour vérifier les signatures numériques des e-mails que vous envoyez? Ce sont toutes des préoccupations que vous devrez considérer et accepter comme risques ou tenter d'atténuer avec de nouvelles solutions, car vous avez moins de conseils non seulement sur la façon de mettre en œuvre, mais même sur les questions que vous devez poser (vous devrez plus que ces trois!).
Lorsque vous parlez à la direction de l'ONG, pensez à décrire la situation en ces termes:
- Cette dernière méthode comporte des risques importants et finira par leur coûter plus de temps à mettre en œuvre que cela ne le fera simplement payer pour l'hébergement - le programme doit être mis à jour, surtout si le serveur (ou la paire de clés du serveur) change, et continuellement distribué aux nouveaux utilisateurs après le déploiement initial.
- Ne rien faire du tout et utiliser un mot de passe http avec des adresses et des noms (et potentiellement des adresses e-mail) pourrait être un désastre de relations publiques en cas de fuite d'informations (et ce sera le cas), un risque important. Cela est aggravé par le fait que les gens réutilisent les mots de passe et que votre mauvaise pratique pourrait être liée à des violations ultérieures.
- Vous avez ainsi réfléchi à la situation et vous n'allez pas simplement suggérer la solution décrite dans étape 4 parce que «tout le monde le fait» (bien que, dans le cas où tout le monde le fait parce que c'est la meilleure pratique, ce n'est pas une mauvaise chose). Être en mesure de proposer la solution alternative (si compliquée et excessive) décrite dans les étapes 1 & 2 est la preuve de cette diligence raisonnable.
- Sur cette base, l'hébergement https avec un coût continu faible (ou nul) est approche à la fois la moins coûteuse ET la moins risquée.
* Jonathan Gray explique pourquoi vous rencontrerez des problèmes de codage d'un système sécurisé dans sa réponse, regardez la section commençant par "TLS est aussi un système beaucoup plus intrinsèque"