Contenu | Rechercher | Menus

Annonce

L'équipe des administrateurs et modérateurs du forum vous invite à prendre connaissance des nouvelles règles.
En cas de besoin, vous pouvez intervenir dans cette discussion.

Ubuntu 18.04 LTS
Ubuntu-fr propose des clés USB de Ubuntu et toutes ses « saveurs » ainsi qu'un magnifique t-shirt pour cette toute nouvelle version d'Ubuntu !

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 03/04/2018, à 19:38

temps

facebook only for human ( cryptographie )

Bonjour,
L'idée est de créer un réseau social qui ne serve pas de banque de données pour une multitude de robots.
Si certains ont déjà regardé le concept qui me permet de créer le langage multidirectionnel : http://www.letime.net/j, ils se sont déjà aperçu que tout est généré à l'aide de tableaux et l’enchaînement des sons dans la vidéo est selon l'ordre indiqué.
Si la curiosité les a poussé à regarder les différentes formes de langages multidirectionnels, ils ont vu aussi des générateurs d'alphabet en exemple http://www.letime.net/alpha/2.html.

Entre les deux formes il n'y a qu'un pas, ou plus simplement au lieu de dessiner des personnages pour animation, il suffit de dessiner des lettres qui associées formeront un texte qui défile à une vitesse contrôlé par le lecteur. Dans cette technique nous trouvons plusieurs avantages, puisqu'il existe une multitude de manière pour générer le même effet et qu'en changeant un seul des facteurs nous changeons l'effet.

En pratique cela donne plusieurs tableaux qui selon comment ils sont associés donnent les lettres de différentes manières, et cerise sur le gâteau, une clef de cryptage qui donne le bon ordre aux tableaux. Dans cette construction, sans la clef les robots se noient dans l'infinité des possibilités.

Expert en cryptage qu'en pensez-vous ? L'idée me semble bonne mais j'e n'ai pas d'expérience en ce domaine.
Cordialement

P.S. La technique peut aussi être utile pour éviter qu'un texte puisse être copié/collé en bridant l'accès d'un des tableaux qui fait apparaître le texte

Dernière modification par temps (Le 03/04/2018, à 19:43)


Parce que l'USB bootable est le support des systèmes experts,
Parce que l'USB bootable contient sa propre image au démarrage.
L'USB bootable permet de créer un monde à la dimension de son imagination

Hors ligne

#2 Le 12/06/2018, à 11:09

tykayn

Re : facebook only for human ( cryptographie )

c'est un projet assez fou! smile
peut être qu'en faisant un fork de Mastodon ou diaspora tu pourrais parvenir à obtenir un réseau social qui utilise ces fonts là.
je sais pas si ça serait hyper lisible mais ça peut être marrant de bidouiller la vue de rendu des messages comme ça.

Hors ligne

#3 Le 12/06/2018, à 13:43

temps

Re : facebook only for human ( cryptographie )

Bonjour,
Merci pour la réponse et l'ouverture d'une possibilité.
L'idée est d'apprendre aux utilisateurs à générer leur propre "font" à l'aide du javascript (voir même des textes différents selon l'écran), je pense qu'en une demie journée de formation, c'est faisable . En plus ici nous ne sommes pas limité à la symbolique des lettres, c'est un langage beaucoup plus puissant qui ajoute l'éclairage des sons.
Pour démarrer, il faut affiner le réseau et créer un générateur qui puisse lire le "font" de chacun. Le nouveau générateur en construction que j'ai mis en ligne peut déja servir de base de travail, nous pourrions en faire un .deb ou un add-on firefox.
Je suis en pleine refonte de mon site, dès que j'ai fini, je vais consacrer un peu de temps sur ce projet.
Cordialement

Dernière modification par temps (Le 20/06/2018, à 18:21)


Parce que l'USB bootable est le support des systèmes experts,
Parce que l'USB bootable contient sa propre image au démarrage.
L'USB bootable permet de créer un monde à la dimension de son imagination

Hors ligne

#4 Le 13/06/2018, à 09:23

Brunod

Re : facebook only for human ( cryptographie )

Sujet intéressant à suivre : je m'abonne smile


Windows est un système d'exploitation de l'homme par l'ordinateur. Linux, c'est le contraire...
37 pc linux convertis

Hors ligne

#5 Le 16/06/2018, à 07:40

temps

Re : facebook only for human ( cryptographie )

Bonjour,
Je vais essayer de poser les bases de départ.
En premier nous avons besoin d'un serveur compatible, j'ai un abonnement pro chez OVH, mais c'est pas mon point fort. Si quelqu'un de plus du libre soulage cette partie, c'est pas plus mal.
Sur ce serveur nous avons besoin d'une base, j'ai commencé à regarder et installer en local, hubzilla, Mastodon, diaspora, mais je pense que https://elgg.org/ est peut être la meilleure solution pour démarrer.

Le principe est qu'à l'ouverture du réseau social, nous lançons une application qui crée la page html qui va être envoyée.
Cette page html ne contient que deux informations, la première un balise identité pour donner un repère au javascript, la deuxième est l'appel du fichier javascript.
En appliqué cela donne un code bash ou c++, qui génère un fichier html :

<!DOCTYPE html>
<html lang="fr">
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title></title>
<link rel="preload" href="a.js" as="script">
<div id="b"></div>
<script src=a.js></script>

et qui génère un fichier javascript finissant toujour par

/*******************************************************************************************************************/
/**passerelle firefox 48 pour remplacer le bouton d'appel java**/
   function load() { 

lancertout(); 
   } 


 document.addEventListener("DOMContentLoaded", function(event) {

    load();
  });
/**fin passerelle firefox 48**/

Avant d'aller plus loin pour comprendre comment les codes qui suivent fonctionnent, il faut décrire la structure du langage multidirectionnel.
La structure du langage multidirectionnel est composé d'un tableau par "loi" utilisée (image, vitesse ou son).
Nous allons donc avoir plusieurs fichiers prédéfinis qui indiquent les actions générées (certains sont déjà existant ce sont tous les générateurs css et dernièrement firefox c'est encore améliorés, les autres il faut prendre ceux que j'ai créé comme pour les sons).
Nous sommes dans un monde composés de trois parties, des fichiers indiquant les actions, des tableaux ou des tableaux de tableaux, et des fichiers qui font les liens entre les deux. Le tout génère le langage multidirectionnel au travers du réseau social.

Ceci dit, revenons à notre fichier java script,
Dans le fichier javascript, nous allons avoir trois zone distinct
zone 1
celle qui appelle les fonctions comme jouer un son généré, ou changer l'image au clique ou au passage de souris, c'est de la forme :

document.getElementById("acelereLeVenta3").addEventListener("click", acelereLeVent);

avec acelereLeVent la fonction
acelereLeVenta3 qui est l'identité générée dans le html
et click si nous voulons que l'action se passe au clique
zone 2
celle qui génère les balise html contenant les identités
c'est de la forme en exemple

for(var ui= 0; ui < 9; ui++)
{
for(var i= 0; i < 75; i++)
{
var nouveauinput;
function ajouteElemen() {
var body   = document.body || document.getElementsByTagName('body')[0],
nouveauinput  =  document.createElement("input");
nouveauinput.setAttribute("type", "number");
nouveauinput.setAttribute("id", totalu[ui]+i);
nouveauinput.setAttribute("value", totalu1[ui][i]);
nouveauinput.setAttribute("style", "display: none;");
body.insertBefore(nouveauinput,body.childNodes[0]);
}  
ajouteElemen();
}
}

et la zone3 ou se trouve les variables et les fonctions.

Le code bash ou c++ sert à générer ces 2 fichiers.
Au prochain poste j'écris un exemple simple

Dernière modification par temps (Le 16/06/2018, à 08:04)


Parce que l'USB bootable est le support des systèmes experts,
Parce que l'USB bootable contient sa propre image au démarrage.
L'USB bootable permet de créer un monde à la dimension de son imagination

Hors ligne

#6 Le 18/06/2018, à 01:48

temps

Re : facebook only for human ( cryptographie )

Écriture de Hello world
Nous pouvons lui donner une infinité de sens selon comment nous faisons apparaître les lettres. Pour ce premier exemple, nous n'utilisons pas le mode son, ou le mode vidéo, nous allons utiliser juste une image fixe.
Nous avons un tableau contenant les actions css basiques (les propriétés) et un tableau contenant les valeurs css.
Nous interagissons avec ces tableaux à l'aide d'un tableau contenant les indices construisant les images en allant chercher les éléments dans les autres tableaux.
En css c'est le dernier qui parle qui a raison, ce qui permet une infinité de possibilité pour faire apparaître la même image (ici l'image fait apparaitre deux mots).
Les dernières ou futures normes css, font que nous n'écrivons plus le css dans la page html, mais que nous l'appelons au travers de "class="

Nous générons donc en c++ ou bash deux fichiers qui associés aux fichiers référents (les tableaux donnant des adresse au css, et aux tableaux de gestions) crée l'image finale

Les variables de bases du css dans le fichier javascript généré de l'exemple sont :

// prop est la propriété css
// val est la valeur css

var prop = ['background', 'background-color', 'color', 'border', 'background-image', 'background-repeat', 'background-attachment', 'background-position', 'border-bottom', 'border-bottom-color', 'border-bottom-style', 'border-bottom-width', 'border-color', 'border-left', 'border-left-color', 'border-left-style', 'border-left-width', 'border-radius', 'border-right', 'border-right-color', 'border-right-style', 'border-right-width', 'border-style', 'border-top', 'border-top-color', 'border-top-style', 'border-top-width', 'border-width', 'margin', 'margin-bottom', 'margin-left', 'margin-right', 'margin-top', 'padding', 'padding-bottom', 'padding-left', 'padding-right', 'padding-top', 'height', 'max-height', 'max-width', 'min-height', 'min-width', 'width', 'outline-style', 'outline-color', 'outline-width', 'outline-offset', 'outline', 'direction', 'letter-spacing', 'line-height', 'text-align', 'text-decoration', 'text-indent', 'text-shadow', 'text-transform', 'text-overflow', 'unicode-bidi', 'vertical-align', 'white-space', 'word-spacing', 'font', 'font-family', 'font-size', 'font-style', 'font-variant', 'font-weight', 'a:link', 'a:visited', 'a:hover', 'a:active', 'list-style', 'list-style-image', 'list-style-position', 'list-style-type', 'border-collapse', 'border-spacing', 'caption-side', 'empty-cells', 'table-layout', 'display', 'visibility', 'bottom', 'clip', 'left', 'position', 'right', 'top', 'z-index', 'overflow', 'overflow-x', 'overflow-y', 'box-sizing', 'clear', 'float', 'opacity', 'filter', 'box-shadow', 'content', 'counter-increment', 'counter-reset', 'border-radius', 'border-top-left-radius', 'border-top-right-radius', 'border-bottom-right-radius', 'border-bottom-left-radius', 'border-image', 'border-image-source', 'border-image-slice', 'border-image-width', 'border-image-outset', 'border-image-repeat', 'background-clip', 'background-origin', 'background-size', 'text-shadow', 'box-shadow', 'text-overflow', 'word-wrap', 'word-break', '-ms-transform', '-webkit-transform', 'transform', 'transform-origin', 'transform-style', 'perspective', 'perspective-origin', 'backface-visibility', '-webkit-transition', 'transition', 'animation-name', 'animation-duration', 'animation-delay'];

var val = ['dotted', 'dashed', 'solid', 'double', 'groove', 'ridge', 'inset', 'outset', 'none', 'hidden', 'inline', 'block', 'static', 'relative', 'fixed', 'absolute', 'sticky', 'visible', 'scroll', 'auto', 'px', 'em', 'ex', 'ch', 'rem', 'vw', 'vh', 'vmin', 'vmax', '%', 'linear-gradient', 'radial-gradient', 'translate', 'rotateX', 'rotateY', 'rotateZ', 'ease', 'linear', 'ease-in', 'ease-out', 'ease-in-out', 'cubic-bezier'];

Ce qui nous permet d'appeler les termes générateurs dans des boucles du "for" et rend par la même l'écriture du code beaucoup plus aisé et léger.

Le générateur est en construction, mais fonctionnel en téléchargement ici : generateur à décompresser et compiler
le css n'est pas encore généré par le javascript, mais avant peu j'aurai corrigé

ce qui donne : https://www.letime.net/g/

Ce que je vais faire c'est écrire une phrase qui pourra être appelé par chaque caractère en exemple :

char lol1[] = "<script>"  ;
char lol2[] = "var nouveauinput; function ajouteElemen() {var body   = document.body || document.getElementsByTagName('body')[0], nouveauinput  =  document.createElement(\"div\"); nouveauinput.setAttribute(\"class\", \""  ;
char lol3[] = "px\"; body.insertBefore(nouveauinput,body.childNodes[0]); } ajouteElemen(); </script> " ;
char lol4[] = "\"); nouveauinput.style.marginTop=\"";
char lol5[] = "px\"; nouveauinput.style.marginLeft=\"" ;

Ensuite dans le switch qui reconnait le caractère de nos messages, je fait dessiner le bon caractère, en exemple :

  
        sortieglm << lol1 << lol2 << "box201" << lol4 << plac << lol5 <<placement << lol3 << endl;

Avec plac qui indique la position en hauteur et placement la position horizontale.
j'ai aussi modifié boucle par box pour être plus dans les normes et cela donne pour le caractère 0

        sortieglm << ".box201{ width: 8px; height: 15px; border-style: solid; border-color: coral;border-radius: 50% 50% 50% 50% / 50% 50% 50% 50%;}" << endl;

Je viens de remplacer le Hello word avec une version issus du nouveau générateur.
Je pourrai améliorer les lettrines, mais ce n'est pas important car je voudrais que chacun puisse avoir ses propres lettrines.
Ce que je vais faire, c'est un tutoriel pour indiquer comment utiliser le générateur, et montrer la puissance de la sémantique en reprenant ma page web qui dit qui je suis. Pour la première fois, je dispose d'un langage qui va me permettre de le faire sans contact humain, et c'est ça que je veux faire. Le fait que les robots ne comprennent pas ce que nous disons n'est vraiment qu'un détail par rapport à l'objectif.

Dernière modification par temps (Hier à 10:40)


Parce que l'USB bootable est le support des systèmes experts,
Parce que l'USB bootable contient sa propre image au démarrage.
L'USB bootable permet de créer un monde à la dimension de son imagination

Hors ligne

#7 Le 19/06/2018, à 21:48

temps

Re : facebook only for human ( cryptographie )

Bonjour,
J'ai trouvé des solutions aux différents obstacles rencontrés, il ne me reste qu'à déployer sur tous les caractères.
Ensuite simplifier par l'utilisation de tableaux et enfin écrire un tutoriel pour que chacun puisse créer ses propres lettrines animées.
Je pense avoir une première version avant la semaine prochaine. Je mettrais le code dans le poste précédent.

Pour avancer en parallèle, j'en suis à l'installation de Mastodon sur mon serveur OVH pro, est-ce que quelqu'un peu me guider sur cette partie (ssh, VI, nano ne me pose pas de problème, j'ai déjà créer des application en ligne sur ce serveur).

J'ai encore avancé un peu ce soir, et puisque la base génératrice est presque fini, je commence à expliqué un peu.
Plus tard je créerai une interface pour mastodon, mais en attendant il faut créer un fichier texte nommé "aconvertir.txt" ,
mettre la sélection génératrice vidéo et son, puis écrire son texte pour générer son message en appelant l'application gml en terminal

./gml

Cordialement

Dernière modification par temps (Le 22/06/2018, à 00:32)


Parce que l'USB bootable est le support des systèmes experts,
Parce que l'USB bootable contient sa propre image au démarrage.
L'USB bootable permet de créer un monde à la dimension de son imagination

Hors ligne