mercredi 30 avril 2008

Emmanuel Markov Goldstein est parmis nous

C'est officiel, encore une bonne idée qui a déjà été faite : reconstituer les passwords rien qu'au son des claviers. Chaque touche est une sorte d'harmonique avec sa signature propre, le chant mêlé de chacune des touches est bien plus que l'infâme cliquetit qui donne envie d'égorger son voisin de bureau qui chatte sur msn, non c'est une symphonie secrète qui révèle le fond splendide de la pensée du compositeur qui s'ignore à qui sait l'écouter (ce que décrivent les articles suivants).



Dans l'abstract de A Novel Approach to User Authentication Through Machine Learning of Keyboard Acoustic Emanations on peut lire :

Recent work by Asonov and Agrawal [1] and
Zhuang et al. [2] has shown that acoustic emanations from
keyboards can be used to reconstruct the text that is being
typed. This, in theory, allows for the retrieval of confidential
information such as passwords by covertly recording sound from
the keyboard, and thus poses a significant security threat.
Their techniques work because different keys produce different
acoustic signatures when struck by the typist. Classifiers can be
built to detect these differences and language models help in
establishing priors for the various key combinations.
This paper looks at applying machine learning techniques to
the identification and authentication of users based solely on the
acoustic waveform generated as the user types on a keyboard.
This is possible because, not only do different keys produce
different sounds, but the same key sequence can produce different
acoustic waveforms when typed by a different user. Classification
accuracies of up to 98% are reported on a small set of trial user.


Et dans le corps:


As discussed above, the keystroke detection algorithm will
sometimes fail to detect actual keystrokes and ocassionally
produces erroneous keystrokes. In an attempt to remove the
keystroke detection algorithm from the classification proce-
dure, a left-to-right hidden Markov model (HMM) with states
for silence, hit peak, silence, and release peak was designed.
The HMM can then automatically detect keystrokes given a
sequence of feature vectors from the entire acoustic waveform.
The HMM has the added benefit of modeling temporal infor-
mation (such as inter-key timing).


Je ne sais pas si ils l'ont suggéré/dit, mais le timing entre touche me semble une information pertinente pour trouver faciliter la reconnaissance d'un mot (pour un layout de clavier donné). Deuxiement, je n'ai pas vu à quel moment ils essayent d'associer une signature spectrale à une lettre, mais ce qui tombe sous le sens est de considérer la fréquence des signatures vis à vis de la fréquences des lettres dans une langue.

L'autre article Dictionary Attacks Using Keyboard Acoustic Emanations sur le sujet, qui lui se sert de satisfaction de contraintes pour créer le problème. (alors elle est pas belle la vie d'avoir fait un master IA?)


C'est tout me diriez vous? Et bien non, maintenant il est aussi possible de reconstituer ce qui est écrit à partir d'une vidéo de coupable de crimpense! (et oui monsieur, sic tempora, sic mores!)


jeudi 24 avril 2008

Ce cher Edsger...

Comme le faisais récement remarquer quelqu'un qui habite en France, personne ne lit ce blog, mais en même temps personne ne l'écrit. Pour ne pas lui donner tort, voici une note entière de Edgard Quinet Dijkstra.Qui peut être trouvé ici. Et dont on donne la transcription là ↓


On the foolishness of "natural language programming"

Since the early days of automatic computing we have had people that have felt it as a shortcoming that programming required the care and accuracy that is characteristic for the use of any formal symbolism. They blamed the mechanical slave for its strict obedience with which it carried out its given instructions, even if a moment's thought would have revealed that those instructions contained an obvious mistake. "But a moment is a long time, and thought is a painful process." (A.E.Houseman). They eagerly hoped and waited for more sensible machinery that would refuse the embark on such nonsensical activities as a trivial clerical error evoked at the time.



Machine code, with its absence of almost any form of redundancy, was soon identified as a needlessly risky interface between man and machine. Partly in response to this recognition so-called "high-level programming languages" were developed, and, as time went by, we learned to a certain extent how to enhance the protection against silly mistakes. It was a significant improvement that now many a silly mistake did result in an error message instead of in an erroneous answer. (And even this improvement wasn't universally appreciated: some people found error messages they couldn't ignore more annoying than wrong results, and, when judging the relative merits of programming languages, some still seem to equate "the ease of programming" with the ease of making undetected mistakes.) The (abstract) machine corresponding to a programming language remained, however, a faithful slave, i.e. the nonsensible automaton perfectly capable of carrying out nonsensical instructions. Programming remained the use of a formal symbolism and, as such, continued to require the care and accuracy required before.

In order to make machines significantly easier to use, it has been proposed (to try) to design machines that we could instruct in our native tongues. this would, admittedly, make the machines much more complicated, but, it was argued, by letting the machine carry a larger share of the burden, life would become easier for us. It sounds sensible provided you blame the obligation to use a formal symbolism as the source of your difficulties. But is the argument valid? I doubt.

We know in the meantime that the choice of an interface is not just a division of (a fixed amount of) labour, because the work involved in co-operating and communicating across the interface has to be added. We know in the meantime --from sobering experience, I may add-- that a change of interface can easily increase at both sides of the fence the amount of work to be done (even drastically so). Hence the increased preference for what are now called "narrow interfaces". Therefore, although changing to communication between machine and man conducted in the latter's native tongue would greatly increase the machine's burden, we have to challenge the assumption that this would simplify man's life.

A short look at the history of mathematics shows how justified this challenge is. Greek mathematics got stuck because it remained a verbal, pictorial activity, Moslem "algebra", after a timid attempt at symbolism, died when it returned to the rhetoric style, and the modern civilized world could only emerge --for better or for worse-- when Western Europe could free itself from the fetters of medieval scholasticism --a vain attempt at verbal precision!-- thanks to the carefully, or at least consciously designed formal symbolisms that we owe to people like Vieta, Descartes, Leibniz, and (later) Boole.

The virtue of formal texts is that their manipulations, in order to be legitimate, need to satisfy only a few simple rules; they are, when you come to think of it, an amazingly effective tool for ruling out all sorts of nonsense that, when we use our native tongues, are almost impossible to avoid.

Instead of regarding the obligation to use formal symbols as a burden, we should regard the convenience of using them as a privilege: thanks to them, school children can learn to do what in earlier days only genius could achieve. (This was evidently not understood by the author that wrote --in 1977-- in the preface of a technical report that "even the standard symbols used for logical connectives have been avoided for the sake of clarity". The occurrence of that sentence suggests that the author's misunderstanding is not confined to him alone.) When all is said and told, the "naturalness" with which we use our native tongues boils down to the ease with which we can use them for making statements the nonsense of which is not obvious.

It may be illuminating to try to imagine what would have happened if, right from the start our native tongue would have been the only vehicle for the input into and the output from our information processing equipment. My considered guess is that history would, in a sense, have repeated itself, and that computer science would consist mainly of the indeed black art how to bootstrap from there to a sufficiently well-defined formal system. We would need all the intellect in the world to get the interface narrow enough to be usable, and, in view of the history of mankind, it may not be overly pessimistic to guess that to do the job well enough would require again a few thousand years.

Remark. As a result of the educational trend away from intellectual discipline, the last decades have shown in the Western world a sharp decline of people's mastery of their own language: many people that by the standards of a previous generation should know better, are no longer able to use their native tongue effectively, even for purposes for which it is pretty adequate. (You have only to look at the indeed alarming amount of on close reading meaningless verbiage in scientific articles, technical reports, government publications etc.) This phenomenon --known as "The New Illiteracy"-- should discourage those believers in natural language programming that lack the technical insight needed to predict its failure. (End of remark.)

From one gut feeling I derive much consolation: I suspect that machines to be programmed in our native tongues --be it Dutch, English, American, French, German, or Swahili-- are as damned difficult to make as they would be to use.
Plataanstraat 5
5671 AL NUENEN
The Netherlands prof.dr.Edsger W.Dijkstra
Burroughs Research Fellow


Est ce à l'utilisateur de s'adapter, ou à l'application de s'adapter? Interface utilisateur ou interface machine? Voilà de quoi donner du fil à remoudre à ce cher J'expire.


Concernant l'inanité culturelle de ma génération dont mon orthographe soixante huitardes et mon style résonant sont de bons représentants, voici un texte de ce George Oh Well (née Bernadette Soubirous) décriant ces travers dès 1946, l'année où - je le rappelle - mes grands parents se sont héroiquement enrolés dans les FFI.

Le texte est ici, mais en ce qui me concerne j'ai juste lu la page wikipedia de Politics and the F* Perfide Albion Language, dont on trouvera des morceaux choisi, choisiS ou choisiT ou choisi tout court? bref, on les trouvera là ->


Politics and the English Language (1946), by George Orwell, is an essay that criticizes ugly and inaccurate contemporary written English. He asserts that it causes and affects foolish thoughts and dishonest politics. Vagueness and sheer incompetence are the most marked characteristic of contemporary English prose, and especially of the political writing of his day. Orwell criticizes contemporary writers' preference of abstract words over concrete ones, and suggests that they impair precise thought. He notes that insincerity is the enemy of clear prose, and that vague political writing is a defence of indefensible values. He contends that vague expressions cause ugly writing and conceal a writer's thoughts from himself and others.



Orwell asserts that the English language is declining, but that the decline is reversible. He cites five contemporary examples of bad writing, criticizing them for staleness of imagery and lack of precision. "Politics and the English Language" describes the tricks of his contemporaries in avoiding the work and thought required for composing clear prose: overused, "dying" metaphors, "operators or false verbal limbs" used in place of simple verbs, and pretentious diction and meaningless words.


Tout cela originant d'une intuition subite quoique impromptue de pouvoir compiler du francais en code executable. J'imagine déjà le compilateur capable de detecter mes erreurs de syntaxe en francais et je m'en rejouit. Sans compter tous les problèmes über-sympatoches que cela pose au niveau IA.

Voici un exemple de code source :


Soit une fonction qui prends en argument un nombre entier et qui retourne le carré de ce nombre.


Etonnant non?


mardi 15 avril 2008

Printemps 2008


ou presque...
Par contre, n'espérez pas un post de moi avant longtemps :p

Libellés :


dimanche 13 avril 2008

Les victoires de l'IA : les ordinateurs avec personnalité

Pour coller avec le thème du séminaire SMA d'aujourd'hui,




Oui, c'est toujours de l'import.


jeudi 10 avril 2008

Perche detengo il dottorato




Oui, je sais c'est de mauvais gout, mais bon on a pas mieux que de l'import en ce moment.


mercredi 9 avril 2008

Fonds de tirroirs - 1

Quelques conseils de bon sens...

Patterns for the Doctoral Student

How to Write a Scientific Paper

How to Read a Scientific Research Paper

So long, and thanks for the Ph.D.

A propos de procrastination:

Good and bad procrasination

Structured Procrastination

Rien à voir:

Can Scientists Dance?

A CS Research Topic Generator

How To Criticize Computer Scientists

UN truc vraiment intéressant :

A Periodic Table of Visualization Methods



Encore un autre webcomic geekeux

Quand il n'y en a plus, il y en a encore : http://www.decorumcomics.com/



(plus si le son du click-click)



















mercredi 2 avril 2008

Ooh snif !

Libellés :


Les réflexions de la machine à café :

Recent Comments

A consommer avec modération tout abus sera puni, bloguer tue et réduit la fertilité, n'oubliez pas la damepipi a l'entrée etc. etc.