Qui est connecté sur mon ordinateur?

Pour les non habitués, l’article suivant liste les commandes pour connaître qui est connecté sur votre PC avec des commandes sur le système d’exploitation ubuntu.

En ouvrant un émulateur de terminal tapez la commande netstat -a

netstat -a

Cela donne une colonne contenant les adresses distantes.Vous y trouverez les noms des sites web auquels vous êtes actuellement connectés mais aussi les autres connexions.Les plus intéressantes connexions, à distance, sont les lignes préfixés par tcp. Si vous avez un doute sur l’une des adresses listées vous pouvez questionner les services web Whois via un moteur de recherche pour connaître le propriétaire du site. En recherchant Whois vous trouverez une série de site web vous permettant d’identifier l’origine des connexions. Il arrive qu’il y en a des centaines….

Pour savoir si un site n’est pas en panne tapez dans l’émulateur de terminal ping puis le nom de domaine. exemple ping tea-crypt.com. Il renseigne le nom ou l’adresse physique de votre site par exemple.

Longitude et latitude en javascript avancé

Voici une des demo qooxdoo auquel j’ai ajouté les champs de saisie des longitudes et latitude dont vous pouvez voir en ligne le résultat sur http://tea-crypt.com/wp-content/uploads/2017/02/index.html

Pour le mettre en ligne il suffit de uploader le répertoire francistonner\build-indigo et de faire pointer par redirection votre url dans mon cas francistonner.fr sur le fichier index.html. Il s’agit d’une technologie ayant besoin que d’une seule page pour contenir la carte du monde entier.


Le répertoire du code source est en vente avec livraison par téléchargement pour 24 EUROS sous le libellé Carte Longitude Latitude Javascript.
Le transfert de savoir faire pour compiler le code est à demander par devis à tiaray@businessintegrator.fr côté conseil IT car l’environnement de développement dépend de votre architecture cible.


mail de livraison



Big Data et Intelligence Artificielle pour le droit

Une première étude d’impact montrerait l’arrivée de dossiers volumineux générés en un seul clic qui impacterait la marge des professionnels de droit qui ne disposerait pas de système automatisé d’analyse et de prise en charge de la lecture de plusieurs Giga de pièces et conclusions reçues.

Le second impact serait le même problème de lecture de conclusions « Bigifiés » côté juge. Si vous lisez l’évangile il y a le cas d’une veuve qui obtient gain de cause en importunant un juge avec comme recommandation « demandez et vous recevrez ».
Ces termes peuvent convenir.
Pour des raisons d’équité et de droit à contredire sans être noyé par les flots « streams »,
je préconise un language graphique pour les professionnels de droit en sortie et en entrée des outils d’analyse fastidieuse qui propose des lignes, stocké crypté, comme ceci :

lignes
lignes

Si ce projet vous intéresse n’hésitez à investir d’une façon ou d’une autre sous forme d’idées, de cadrage (liste des données à intégrer) sachant que dessiner des petits carrés interactifs n’est pas difficile du point de vue technologique, le problème est à l’ ‘alimentation qualitatif’.
Qu’est ce que l’alimentation qualitatif?
Cela consiste à donner une signification dynamique à une donnée dans un contexte multi-dimensionnel : temps, espace , cadre juridique, pays,…etc

contactez-moi ici
Tiaray RAFARALAHITSIMBA Ingénieur Conseil

Tampons numériques

Avant de conclure des pièces numérotées peuvent être tamponées en trois clicks.
Plaise aux conseillères et conseillers et à leurs assitant(e)s.
Voici un exemple de la faisabilité d’un tampon sur un fichier image *.png.
Le procédé est automatisable à moindre coût par un batch en Java sur l’ensemble des fichiers images sélectionné en masse. C’est codé ce matin entre 8h et 10h 30 ,17 Mars 2017.
Dans cette vidéo l’interface ajoute un tampon en haut à gauche (upper left corner).
Le numéro de la pièce est dynamique 1 puis 100.
Code sources sur TamponneTout.java pour le tampon en masse incrémental.

Opération #digital_proofs_of_your_innocence
Vous voulez aussi développer tranquillement des composants Java
contactez-moi ici
Tiaray RAFARALAHITSIMBA Ingénieur Conseil

Weekly draft 11: Site emploi Java EE Libre-3

Présentation

Libre-3
Libre-3

Libre-3 est un composant open source à dépendances minimales.C’est une plateforme de recrutement jobboard permettant aux recruteurs de vendre des conseils en recrutement. Si vous preniez un autre composant Open Source à dépendances multiples, un des composants va vous coûter en test de non régression au moment du it’s time to pay; car tel est le business model de l’open source. Or ce temps n’existerait pas à cause du contexte décrits ci-dessous.
C’est pourquoi on revient au modèle de classpath traditionnel sans Maven ni les multiples téléchargement de dépendances obscures.

    Avec trois royaumes sécurisés :

  • Admin qui a comme fonction de gardien de la plateforme
  • Recruteur la partie commerciale
  • Candidat la partie employé

Convictions

Le recrutement traditionnel va disparaître à cause de l’intelligence artificielle,cette plateforme se positionne comme une porte de sortie temporaire pour les métiers du recrutement.
A partir d’un moment où il n’y aura plus de travail dans les domaines où le travail humain est remplaçable par des robots, les sociétés vont se retrouver avec des employés non affectés, ces personnes s’envoleront d’elles mêmes espérons-le dans de bonnes conditions.
Cette application sécurisé avec des dispositifs asymétrique Easy tea-crypt lib renforce l’anonymisation dans les contextes décrits ci-dessus.
Il n’est pas nécessaire d’être une très grande société pour déployer et mettre en place cette plateforme; l’architecture Java EE, JSF 2.2, EJB3 et HTML5 est économe toutefois la prise en main est sophistiqué car il faut penser simple .
JSF2.2 facelets avec le fonctionnement AJAX économise les coûts des infrastructures réseaux (aller-retour).Soit vous gagnez en coût d’infra à charge égales, soit en nombres de consultations simultanées à infra égal.

Mot pour les designers

Pour les designers, le templating JSF2.2 facelet permet de changer de décor dynamiquement à la requête ce qui est une révolution à mon avis car on peut tout scoper (requête,page, session,application) de façon sédimentaire; cela ouvre des perspectives de styling personnalisé à chaque requête, à tout moment.
Imaginez un styling selon l’enthousiasme du mouvement de la souris, c’est possible…

Tiaray RAFARALAHITSIMBA

Impressions sur .NET 4.5.1

Voici les premières impressions bottom-up sur un Proof Of Concept MVC avec la technologie .NET 4.5.1.

  • La première surprise est de découvrir jquery 1.7.1 dont on a une garantie que cette version a été testé par les équipes Microsoft.L’idempotence de jquery est à contrôler à cause de sa capacité à générer du code à retardement via la méthode JavaScript setTimout. On peut tout à fait s’attendre qu’une faille de sécurité sur ce code en retard puisse être exploité. Je ne sais à ce jour si un Thread JQuery via l’interpréteur de JavaScript de chaque navigateur peut être stopé par un anti-virus.
  • La seconde surprise est la présence de deux couches de vue, une de présentation web et une ‘serviceable’ devant le modèle et le contrôleur. Je ne suis pas allé assez loin pour voir si le MVVC est efficace, étant freiné par le prix de la licence de Visual Studio et la lourdeur de la version community qui tue mon interpréteur Python.
  • Sauf erreur de ma part, ils ont oublié le delete car il y a bien List,Detail,Edit,Insert qui sont les équivalents du CREATE, READ, UPDATE. Ou bien il manque le projet Batch associé qui fait les mis-à-jour et suppressions en cacade laissant de la place budgétaire aux équipes.

Cliquez ici pour démarrer


Table des matières

Auteur:Tiaray RAFARALAHITSIMBA

Diapo 1
Diapo 2
Design time Ark of POC
Structure
.NET 4.5+ Global file


Vous voulez aussi des DAF et DAT bottom-up
contactez-moi ici
Tiaray RAFARALAHITSIMBA Ingénieur Conseil

BaseBYomRishon project :Connexions

Ce projet a pour but de stocker et échanger des nombres aux propriétés mathématiques particulières en peer to peer.

L’url du projet https://sourceforge.net/projects/basebyomrishon/

L’article ici en englais permet de manipuler les deux composants d’échanges client serveur de façon frugal. Cet article est amené à évoluer sur l’url https://sourceforge.net/p/basebyomrishon/wiki/Home/


The ip of the server can be known bye the commands :
– on linux ifconfig
– on windows ipconfig
In the list ipv6 xx:xx:xx:xx:xx: preferably

Server side

Run the server on port 7777
java -cp /home/o/yom1/code/Cnx/dist/Cnx.jar fr.businessintegrator.cnx.Server 7777

For local test use 127.0.0.1 as server ip.
Example on ubuntu, the ifconfig command give :

wlp6s0: flags=4163<up,broadcast,running,multicast> mtu 1500
inet xxx.xxx.0.24 netmask 255.255.255.0 broadcast xxx.xxx.0.255
inet6 xxxx::203b:98ab:1ffa:xxx prefixlen 64 scopeid 0x20<link>
inet6 xxxx:e35:39c3:6ac0:a89f:155b:6ecc:xxx prefixlen 64 scopeid 0x0<global>
inet6 xxxx:e35:39c3:6ac0:e54a:b43a:6f79:c2e4 prefixlen 64 scopeid 0x0<global>
ether xx:xx:xx:xx:xx:xx txqueuelen 1000 (Ethernet)
RX packets 8698 bytes 7494152 (7.4 MB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 7686 bytes 1216497 (1.2 MB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0</global></global></up,broadcast,running,multicast>

The server side can promote its ip adress to its clients. time.

Client Side

The command to check your ip is ping xxxx::203b:98ab:1ffa:xxx

Gives the time in milliseconds on the last column result to calibrate your timeout.
64 bytes from xxxx::203b:98ab:xxxx:e6a2%wlp6s0: icmp_seq=1 ttl=64 time=0.101 ms
I choose a time out multiplication by 100000 10100 ms

Il the server side is running on port 7777 and i wnat to send a little file.
fichier.txt
Hello this is a file

java -cp /home/o/yom1/code/ClientCnx/dist/ClientCnx.jar fr.businessintegrator.cnx.cli.Client xxxx::203b:98ab:xxxx:e6a2 7777 10100 fichier.txt

Valeur d’une donnée médicale du point de vue informaticien

L’âge d’or de la non valeur?

On parle de valeur sur ce que la donnée rapporte mais on peut aussi en parler sur ce que la donnée ne rapporte pas.La connaissance d’une donnée peut retrancher un revenu, entraver l’accès à une assurance, limiter l’accès aux soins, freiner l’accès à un emploi, bloquer un concurrent… Ce qui revient au problème d’un boeuf qui tombe dans un trou le jour du Sabbat. Il faut savoir qu’un boeuf dans le Sud de Madagascar est un salaire annuel.
Toutefois lorsque la donnée s’achète et se vend avec le système d’alimentation et de restitution avec une valeur ajoutée, elle a de la valeur.

Cas et exemple

En s’inspirant de la construction d’un site emploi, d’un site e-commerce et de jsph.fr, je vais expliquer ici ce qu’un informaticien fait dans son processus de traitement des données dans le cas, par exemple, de création d’un progiciel ou d’un service dématérialisé sur un cloud hébergé dans un Datacenter.

Imaginons le cas de construction d’un logiciel L médical de stockage d’information de santé accessible par un site web hébergés chez un hébergeur H qui utilise des datacenters D1 et D2 quelque parts dans le monde.
Pourquoi deux Datacenter au moins, c’est pour la continuité de service. En effet on bascule sur le Datacenter D2 en cas de problème
technique sur le Datacenter D1.
Nous appellerons ce système SI.

Il est évident que dans la réalité, le logiciel L est ‘clusterisé’ ie répliqué plusieurs fois en L1,L2,L3,..chez des hébergeurs H1,H2,.. sur des Datacenter D1,D2,D3,…
Au sein du même Datacenter une réplication au mieux à la vitesse de la lumière en fibre optique existe.

Mais pour comprendre ce que fait un informaticien on simplifiera ce Sytème d’information nommé SI avec le logiciel L chez un Datacenter D1 et D2 hébergé chez H.Espérant que ceci permettra de nourrir les réflexions sur le NTIC en général.

Le cahier des charges

Un logiciel d’accès aux données santé en ligne sécurisé selon la norme N.

Phase de planification et budget

    On planifie les phases du projet avec le budget et les choix technologiques.
    Le projet se décline en trois selon :

  • La partie accessible aux clients (Patients et professions médicales)
  • La partie accessible aux professionnels en interne (hotline du logiciel L de l’entreprise distributrice)
  • La partie accessible aux techniciens, support et informaticiens (support technique, maintenance,… du logiciel L)
  • Retenez bien ces trois facettes du logiciel L sur les risques de confidentialité sur les cycles de maintenance qu’on va décrire plus loin.

Phase d’architecture

    J’aborde personnellement ce genre de projet sur le pattern MVC, Modèle, Vue, Contrôleur en orienté Objet

  • Le Modèle étant l’arborescence des objets à manipuler (Patients, Pathologie, Mutuelle,…)
  • La Vue étant la projection sur une interface graphique de ces objets. En gros les pages Web.
  • Le Contrôleur les règles métiers qui régissent la manipulation du modèle.Ce sont les messages d’erreurs, les listes réduites proposées,…

    Tout d’abord on va modéliser les données sous forme d’objets. Exemple l’objet Patient possède les champs noms, prénoms, adresse,…
    On modélise ensuite l’accès à ses données selon le modèle CRUD

  • Create-création
  • Read – lecture
  • Update- mis-à-jour
  • Delete- suppression
    De là découlent des fonctionnalités qui sont la liste, la recherche, le filtrage et la pagination.

  • Search – la loupe habituelle
  • List – le résultat de la recherche
  • Filter – le résultat de la recherche sur critère
  • Next, Previous, First Last, Page n°x – les fonctionnalités page suivante, précédente, début et fin sur chaque liste

Exemple : on peut rechercher la liste de patients sur Paris dont le prénom commence par ….

Contrôleur

    On modélise en suite les règles qui contrôlent l’accès selon les normes internes en termes de Disponibilité, Confidentialité , Intégrité, Traçabilité ou Preuve.

  • Disponibilité : L’accès aux données
  • Confidentialité : le stockage des données en se branchant par ce qu’on appelle un projet d’intégration aux habilitations des personnes.
  • Intégrité : qualité de la signature des données qui transitent essentiellement
  • Traçabilité et Preuve : L’archivage des actions sur les données pour investigation ultérieure
  • Exemple de contrôle: Le patient p qui vient de contracter et qui vient de se rétracter aura ses données conservées jusqu’à x jours avec un courriel de notification à envoyer dans y jours sauf s’ils’est rétracté au bout de z jours..

Batchs

On met en place des processus parallèles au logiciel L de purge et de mis-à-jour en masse selon la législation sur la durée de conservation des données.On modélise aussi le modèle architectural du logiciel L selon la norme N.

Exemple: Le nom et prénoms sont à caractères personnels ils doivent être cryptés en base de données.

A ce stade on ne manipule pas de données personnelles mais leur contenant.

Construction et Test

En suite vient la phase de développement, test, recette et mise en production.

Généralement pendant le développement (ou programmation ou codage) jusqu’à la mise en production on utilise des jeux de données fictives.Et en pleine confiance on teste sur les propres données de l’équipe.Pour des raisons de marge il faut coder vite et bien. Retenez qu’en société c’est la marge ou la mort.La pression et la qualité lors de cette phase conditionnent le nombre d’anomalies plus tard.

Pour répondre à la norme N, il existe une phase adéquate. Là encore, des points de vigilance sont levés et corrigés de façon proactive.
La difficulté est de suivre une norme en se projetant dans le futur sur son utilisation.

La mise en production.

A partir de cette phase des données réelles s’insèrent dans le système. c’est livré!

Exploitation

A partir de là les équipes de support, de gestion d’incidents entrent en jeux selon les trois facettes du logiciel L décrits plus haut.

Les premières anomalies arrivent avec des données réelles en externe, interne et sur les outils de supports. Toujours trois facettes de L.
Pour reproduire les cas d’erreurs, l’informaticien se sert d’un système qui est la réplique de la production. C’est là qu’il y a un premier souci.
A ce stade les acteurs internes voient transiter de façon crypté ou pas des données médicales.

C’est sur le processus de réplique qu’ on trouve des données personnelles transitant de la production vers le système de copie.
On fait alors appel à des logiciels d’anonymisation des données en pointant les données à anonymiser parmi celles qui ne doivent pas l’être. Toutefois des règles d’intégrité sur les numéros de carte bleu, siret,et autres… doivent être désactivables et désactivées si cela a été conçu.

Si les données sensibles sont cryptées de façon applicative , c’est-à-dire que le cryptage a été codé à la main lors du développement,
cela ajoute beaucoup plus de sécurité et de confidentialité à l’intérieur du SI et à plus forte raison à l’extérieur.

De plus les Datacenter D1 et D2 répliqueraient aussi à l’identique le système SI avec une fréquence convenue dans les contrats et un niveau de confidentialité, de disponibilité si convenus.

(Parenthèse) Il y a un point de vigilance lors de ces réplications sur ce qui arrive aux disques remplacés chez H sur D1 et D2.
A vérifier si les Datacenters garantissent la confidentialité des disques ayant fait l’objet de maintenance auprès de leurs transitifs fournisseurs de service de maintenance hardware. Le cloud, ce sont des solutions d’hébergements sur machine virtuelle permettant de garantir le cryptage des disques. Une machine virtuelle est un logiciel qui simule une machine physique. Cela permet d’avoir des machines hétérogènes à des niveaux de version différents sur une machine physique. On bénéficie d’ émulateur de cryptage physique de stockage sur une machine virtuelle qui est un logiciel.

(Parenthèse) Il y a un point de vigilance à noter sur la réplication des machine virtuelles.

Utilisation et cycle de résolution

Le logiciel L est en production, prenons l’exemple de l’internaute client qui souscrit. Pour visualiser le cycle de traitement d’une anomalie avec des cas extrêmes.

L’utilisateur va utiliser un navigateur WEB. Le navigateur web est un logiciel ayant ses propres connections avec son fournisseur, autre, qui peut intercepter, au mieux qualifier vos actions, vos gestes au niveau de la souris,…des outils analytiques scrutent le pointeur.
On va utiliser donc un logiciel externe le navigateur (ie, firefox, chrome,…) pour se connecter aux services en ligne du logiciel L. l’utilisateur, par exemple, va entrer ces préférences de paiement avec peut être la carte bleue.
Des incidents peuvent survenir et être traité par l’équipe support sur les moyens de paiement par exemple.
Selon la difficulté de l’incident, il faudra rejouer la transaction pour reproduire l’anomalie avec le numéro de carte du patient avec le navigateur qu’il a utilisé et la version de son ordinateur.
Dans les même conditions.Même si le système est crypté de bout en bout, rien ne protège d’une trahison interne. Ce cas volontairement exagéré d’anomalie côté utilisateur illustre les risques de confidentialité impactant les divers acteurs.

Protocoles sécurisés

Les protocoles de sécurité d’accès https, ssh freinent l’accès en clair aux données.
Là, la force du cryptage est fonction du prix des certificats.
Un renforcement par cryptage applicatif ,dans le codage du produit L, couplé à la surveillance humaine métier, compétence à la fois technique mais aussi médicale, dans ce cas, pour qualifier la valeur d’une donnée ,faisant l’objet d’une fuite de confidentialité, est une solution.

Le Big Data

Dès que les données sont ainsi informatisées, ils sont « bigifiables ».
Avec très peu de coût les API (interface d’application) Big Data collectent les données, ils sont alors ‘exposable’ pour analyse, transformation, restitution sous forme de graphes, tableaux et autres à ceux qui les achètent. (J’ai écrit un article sur la difficulté de supprimer une donnée indexée par un moteur de recherche).

Responsabilités sémantiques

    Trois interventions humaines en amont seraient déterminantes pour la confidentialité Big Data:

  • Intervention humaine 1
    Une intervention humaine pour modéliser les meta-règles (comprendre les règles de règles ) qui qualifient et donne une signification à ces données médicales et les placent dans des briques et domaines prédéfinis que l’informaticien ne maîtriserait pas.
  • Intervention humaine 2
    Une intervention humaine pour pondérer deux données similaires. En informatique, il faut savoir que si vous donnez une note à deux données cela permet de noter n données par le système d’arbre binaire
    ou chaque branche dispose récursivement de deux branches avec par exemple un algorithme de pondération de type gradiant où la note ou le poids diminue en s’éloignant de son impact et augmente si intersection comme les vagues de la mer. Et c’est redoutable.
  • Intervention humaine 3
    Il est vrai que cette pondération automatisé peut s’avérer fausse, mais des interventions humaines successives pour corriger les notes, poids et valeurs perfectionnent le système qui peut apprendre via l’intelligence artificielle des Big Data. Il ne faut pas sous-estimer la puissance d’un réseau neuronal. A la fin, le système ne commet plus d’erreur sur les éléments similaires avec lesquels on l’a alimenté. Se forme alors une agence de notation sur la base du volontariat: nous tous.

Parabole

Ce SI est semblable à un vélo qu’on fixe à un poteau publicitaire, avec sa chaîne métallique, servant d’antivol. Et le voleur peut partir avec le sol, le trottoir le panneau publicitaire tout le L, H, D1,D2, maintenant que vous êtes imprégnés des noms de variables.

Comment fait-on?

-1 Cacher l’information que c’est un vélo sous une bâche : enlever les moyens de donner une signification à la donnée par la cryptographie. Et pour palier à la limite légale de 512 bits; pouvoir changer les clés et la nature des algorithmes de façon rotative et automatique.

-2 Choisir un point fixe inamovible d’attache du vélo : ne pas mettre sur le nuage le service de déploiement, de démarrage et d’authentification de l’application L, mais sur un ordinateur physique aux interfaces obscurs.

-3 Attacher les parties du vélo les unes entre elles: donner un moyen de signatures électroniques aux divers composants du logiciel L pour que son fonctionnement soit conditionné à l’intégrité de l’ensemble.

Je préconise un renforcement des chiffrements applicatifs dans le noyau même du logiciel L de façon non normalisé, sûrement en transfert de savoir-faire.
Avec comme point fixe un démarrage par une authentification forte à partir d’un ordinateur fixe et signé et clé USB, non normalisés.

contactez-moi ici
Tiaray RAFARALAHITSIMBA Ingénieur Conseil

Big Data et collecte

Ayant à mis en place un prototype pour évaluer le moteur de recherche SOLR 5.0, j’ai pu constater que la collecte de document PDF était facile.
Cette phase d’indexation est automatique, mais il est très difficile de désindexer, de supprimer une donnée qu’on a alimentée.
Pour supprimer une donnée, il faut, à la collecte propager, un identifiant qui permet de retrouver le document, son contenu, ses enfants,…
Or ceci a un coût en architecture fonctionnelle pour un identifiant sémantique, en architecture technique pour les identifiants techniques, une sorte de clé primaire. Et bien sûr un coût en implémentation et stockage.
Lorsqu’on on choisit un moteur de recherche qui stocke des données en Big Data, il n’ y a pas d’intérêts économique à se priver de données en finançant la possibilité de supprimer les objets liés à un document.

Du coup ce qui est économiquement faisable c’est de stocker les données à supprimer en les qualifiant comme supprimées mais toujours accessibles avec un filtre applicatif du côté des accesseurs.

contactez-moi ici
Tiaray RAFARALAHITSIMBA Ingénieur Conseil