[Processus de fabrication] Fabrication artisanale d’une cotte de mailles.

Histoire de la cotte de mailles.

Depuis l’époque celtique, la fabrication du fil de fer, élément de base de la cotte de mailles semble être connu. Il faut savoir que l’époque celtique s’étale sur plus d’un millénaire et demi. D’environ 1millénaire av J.-C jusqu’au Vème siècle. Située en France et alentours. Mais l’origine de la cotte de mailles semble être gauloise, puis aurait été adoptée par les légions romaines, qui en ont été le principale vecteur de diffusion. Cependant, il semblerait que ce type de défense ait aussi été découvert au moins une fois en Chine.

Prérequis à la fabrication de la cotte de mailles.

  • Fil de fer, acier, ou alu diamètre 1.6-2.2mm.
  • Tige métallique d’une longueur d’environ 1 mètre et de l’épaisseur de vos anneaux diamètre 6-10mm.
  • Pince coupante et 2 pinces plates.
  • Scie à métaux.
  • Un espace de travail.
  • Des vieux gants.
  • Du temps et de l’envie !

Outillage pour cotte de mailles

Avant de commencer quoi que se soit, il vous faut réunir le matériel exposé ci-dessus comme vous pouvez le voir sur la photo.

Étape 1:

Tordez la tige que vous avez sélectionnée pour fabriquer vos anneaux, pour en faire une manivelle. Et croyez moi c’est bien plus simple que de garder la tige toute droite. Pour la tordre faites tourner vos méninges, coincez la barre sous vos pieds, dans un étaux … et utilisé votre force brute pour le reste.

Après avoir tordu la tige en forme de manivelle vous devez encore vous munir d’une scie à métaux pour découper une encoche assez large pour faire passer votre fil de fer. Cette encoche permettra de bloquer le fil de fer dans le but de l’enrouler autour de la tige à l’étape suivante.

Après avoir obtenu la manivelle qui vous servira bientôt, il est temps de passer à l’étape de création des ressorts.

Étape 2:

D’ici quelques minutes vous pourrez peut-être admirer votre premier anneau ! Mais, avant d’obtenir des anneaux il vous faut donner la forme d’anneau à votre fil de fer brute et donc fabriquer un ressort. Saisissez-vous de votre bobine de fil coupez un bout suffisamment long, de l’ordre de quelques mètres en fonction de vos envies et de la longueur de votre manivelle (vous pourrez juger de la distance de fil qu’il vous faut après plusieurs essais).

Fil dans une main et manivelle dans l’autre, vous êtes fin près à … vous servir de vos bras et de vos doigts. Que vous sentirez si vous décidez de faire plusieurs ressorts d’affilés. À  moins que vous m’ayez devancé et que vous ayez conçu l’enrouleuse semi-automatique de fil de fer avant moi ! Ce qui ne devrait pas encore être le cas si vous lisez cette ligne.

Suivez les indications fournies dans les photos suivantes (et leur légende) pour avoir votre ressort fin près à être découpé en anneaux ! Arrivé à la fin faite attention de ne pas vous blessez même avec les gants… Ensuite retirez le ressort de la manivelle !

   


Étape 3:

Après avoir fabriqué votre/vos ressort(s) il vous faut le(s) découper de façon à obtenir des anneaux ! La manipulation est très simple quoique vous sentirez votre/vos main(s) si le fil que vous avez choisi est épais. Mais prenez le du bon côté vous économiserez et les machines de musculation et le temps que vous ne passerez pas dessus.

Revenons en à nos anneaux. Un des seuls conseils que j’ai à vous donnez ici et de couper le plus droit possible de façon à ne pas avoir d’anneaux arrondis ou aplatis quand vous les refermerez. Et cela en fonction de la pince coupante dont vous êtes équipé. Petite note: j’utilise une pince coupante à tête droite. Mais vous pouvez très bien utiliser une pince coupante à tête frontale, ce qui est d’ailleurs conseillé sur certain site internet !

Étape 4:

Voilà une suite de petit visuel comparable à un long discours, pour plus de clarté. Adressez vos questions ou demandes d’éclaircissements dans la partie commentaire.

   

   

   

   

   

Assemblage, récapitulatif:

  1. Assemblez un anneau avec deux autres anneaux, fermez.
  2. Répétez la manipulation au minimum deux fois.
  3. Prenez un nouvel anneau, écartez le.
  4. Faites passer deux fois deux anneaux des deux assemblages précédents
  5. Refaites la manip. plusieurs fois. Entassez les.
  6. Dépliez les pour avoir deux « vagues » dans un sens, une centrale dans l’autre.
  7. Prenez deux assemblages ainsi obtenus, et deux anneaux que vous écartez.
  8. Passez les deux anneaux écartés dans les deux anneaux centraux tout en respectant le sens de la vague centrale.
  9. Refaite la manipulation autant de fois que la longueur que vous désirez.
  10. Une fois que vous avez deux bandes de la longueur désirée.
  11. Attachez les en passant un anneaux préalablement écarté dans 2 anneaux de chaque bande tout en respectant le sens des vagues. (Le même que la vague centrale).
  12. Refermez, et refaite cette étape aussi longtemps que vous désirez pour assembler les deux parties.

Conky sous GNU/Linux

Bonsoir chers lecteurs, bonsoir Google Bot et autres.

Ce soir, un petit article sur conky, programme permettant d’afficher sur votre bureau divers informations concernant votre système, comme par exemple l’uptime de la machine, le % d’utilisation du CPU, l’utilisation de la RAM, l’occupation de vos disques durs ou encore, le titre de musique joué dans RhytmBox.

L’installation s’effectue via un simple sudo apt-get install conky. Il est parfois nécessaire de s’adapter, conky n’étant pas toujours disponible dans les dépôts de toutes les distributions GNU/Linux et il est parfois nécessaire d’ajouter des dépôts de type « non-free ». C’est le cas pour Debian, puisque conky est passé dans le dépôts « non-free » suite à une mise à jour. Néanmoins, l’installation reste à la portée de tous ;).

La configuration des informations à afficher est réalisée via le fichier .conkyrc situé dans votre home directory. Un Ctrl + H vous permettra de le rendre visible. Pour ceux qui n’ont jamais vu à quoi peut ressembler un conky, voilà le mien, remis en place ce soir et légèrement reconfiguré depuis sa dernière utilisation.

Pour ce qui est du code de configuration associé, le voici:

# set to yes if you want Conky to be forked in the background
background yes

cpu_avg_samples 2
net_avg_samples 2

out_to_console no

# Use Xft?
use_xft yes

# Xft font when Xft is enabled
xftfont Bitstream Vera Sans Mono:size=8

own_window        yes    # On dit à Conky de ne pas se mettre sur le bureau mais dans une fenêtre propre
own_window_type   override  # type de fenêtre "maison" (le type desktop convient si on n'a pas d'ombre)
own_window_hints  undecorated,below,sticky,skip_taskbar,skip_pager # définition du type
own_window_transparent yes
own_window_colour hotpink

# Text alpha when using Xft
xftalpha 0.8

on_bottom yes

# Update interval in seconds
update_interval 1

# Use double buffering (reduces flicker, may not work for everyone)
double_buffer yes

# Minimum size of text area
#minimum_size 280 5
#maximum_width 150

# Draw shades?
draw_shades no

# Draw outlines?
draw_outline no

# Draw borders around text
draw_borders no

# Stippled borders?
stippled_borders 10

# border margins
border_margin 4

# border width
border_width 1

# Default colors and also border colors
default_color white
default_shade_color white
default_outline_color white

# Text alignment, other possible values are commented
#alignment top_left
#minimum_size 10 10
gap_x 13
gap_y 34
alignment top_right
#alignment bottom_left
#alignment bottom_right

# Gap between borders of screen and text

# Add spaces to keep things from moving about?  This only affects certain objects.
use_spacer no

# Subtract file system buffers from used memory?
no_buffers yes

# set to yes if you want all text to be in uppercase
uppercase no

TEXT
$nodename - $sysname $kernel on $machine
$stippled_hr
${color lightgrey}Uptime:$color $uptime ${color lightgrey}- Load:$color $loadavg
${color lightgrey}CPU Usage:${color #5000a0} ${cpu}% ${cpubar}
${color black}${cpugraph 000000 5000a0}
${color lightgrey}RAM:$color $mem/$memmax - $memperc% $membar
${color lightgrey}Swap:$color $swap/$swapmax - $swapperc% ${swapbar}
${color lightgrey}Processes:$color $processes  ${color grey}Running:$color $running_processes

${color lightgrey}Temperatures:
 CPU:$color ${hwmon 0 temp 2}°C${color grey} - MB:$color ${hwmon 0 temp 1}°C

${color lightgrey}Batterie: $color${battery BAT0} ${battery_bar 5,120} ${battery_percent}%
$color$stippled_hr
${color lightgrey}File systems:
 /        $color${fs_used /}/${fs_size /} ${fs_bar 5,120 /}
$color$stippled_hr
${if_gw}${alignc}${gw_iface}: ${addrs eth0} Gateway: ${gw_ip}${endif}
Down ${offset 45}${totaldown eth0} ${offset 8}    Up ${alignr}${totalup eth0}
${downspeedgraph eth0 22,150 5e7b7b d8deeb} ${upspeedgraph eth0 22,150 99c8e8 618094}
${offset 40}${voffset -21}${downspeedf eth0}k/s
${offset 190}${voffset -14}${upspeedf eth0}k/s
$color$stippled_hr
${color}Name              PID     CPU%   MEM%
${color #ddaa00} ${top name 1} ${top pid 1} ${top cpu 1} ${top mem 1}
${color lightgrey} ${top name 2} ${top pid 2} ${top cpu 2} ${top mem 2}
${color lightgrey} ${top name 3} ${top pid 3} ${top cpu 3} ${top mem 3}
${color}Mem usage
${color #ddaa00} ${top_mem name 1} ${top_mem pid 1} ${top_mem cpu 1} ${top_mem mem 1}
${color lightgrey} ${top_mem name 2} ${top_mem pid 2} ${top_mem cpu 2} ${top_mem mem 2}
${color lightgrey} ${top_mem name 3} ${top_mem pid 3} ${top_mem cpu 3} ${top_mem mem 3}

${color #FFFFFF} ${top_mem name 1} ${top_mem pid 1} ${top_mem cpu 1} ${top_mem mem 1}
${color #FFFFFF} ${top_mem name 2} ${top_mem pid 2} ${top_mem cpu 2} ${top_mem mem 2}
${color #FFFFFF} ${top_mem name 3} ${top_mem pid 3} ${top_mem cpu 3} ${top_mem mem 3}
${color #FFFFFF} ${top_mem name 4} ${top_mem pid 4} ${top_mem cpu 4} ${top_mem mem 4}

${if_running rhythmbox}
${color lightgrey}${alignc}RhythmBox Now Playing :
${alignc}${exec rhythmbox-client --print-playing-format "%ta - %at"}
${alignc}${exec rhythmbox-client --print-playing-format "%tn - %tt"}
${endif}

La fenêtre ci-dessus ne pas très pratique pour la lecture, je mettrai certainement un lien vers le fichier. Pour lancer conky, taper conky dans un terminal. Dans mon cas, le résultat s’affiche en haut à droite de l’écran. A priori, le démarrage se fait automatiquement à l’ouverture de la session dans la dernière version grâce à l’appel du script .conkyboot.sh, situé dans le dossier .conky.

Cryptographie RSA

Chiffrement RSA

Principe :

Si Bob désire que l’on puisse communiquer avec lui de façon secrète, il procède de la manière suivante :

  1. Bob engendre deux grands nombres premiers p et q (test de primalité).
  2. Bob calcule n = p q donc ɸ(n) = (p-1)(q-1), ɸ indicateur d’Euler.
  3. Bob choisit un nombre aléatoire b avec 1 b ɸ(n) tel que pgcd(b, ɸ(n) ) = 1.
  4. Bob calcule l’inverse de p modulo ɸ(n), noté e, c’est-à-dire : b*e ≡ 1 mod ɸ(n) (Algorithme d’Euclide généralisé).
  5. Bob publie (n, b) (clef public) et garde e qui forme la clef secrète.

Fantasio veut envoyer un message M (M < n) à Bob, il calcule :

C = M^b mod n et envoi C à Bob.

Bob reçoit C et calcule : C^e mod n =M

 

Notions mathématiques :

Considérons l’ensemble suivant : En = {0, 1, 2, …, n-1}.

Théorème :

Soit a appartient à En, alors a est inversible ssi pgcd(a,n) = 1, c’est-à-dire, a et n sont premiers entre eux. Ainsi, si n est premier, alors chaque élément de En est inversible, sauf 0 .

Définition : Indicateur d’Euler noté ɸ.

Il indique le nombre d’élément inversible de En.

Propriétés de ɸ(n) :

  1.  Si n est premier, alors ɸ(n) = n-1.
  2. Si m et n sont premiers entre eux, ɸ(m*n) = ɸ(m)* ɸ(n).
  3. Si m et n sont premiers, alors ɸ(m*n) = (m-1)*(n-1).
  4. Si a est inversible de En, alors a^ ɸ(n) 1 mod n.

Nombre premier: test de primalité

Comme annoncé dans mon dernier article, concernant l’algorithme de recherche des nombres premiers, nous allons nous pencher sur différents tests de primalité d’un point de vue plus mathématique. Néanmoins, cela devrait rester abordable, nul besoin de la connaissance des espaces vectoriels pour comprendre :D.

Méthode naïve:

Il suffit de diviser le nombre n dont on veut tester la primalité par tous les nombres de 2 à √n, car si n = p * q et dans ce cas, on a: p <= √n et q<= √n. En effet, supposons que        p >= q > √n; p > √n, q > √n; p*q > √n   -> absurde car n = p*q. On peut encore améliorer le test et ne tester que les nombres impairs une fois que la division par 2 a échoué. La complexité de ce test est exp( 1/2 * log n ).

Test de Fermat:

Rappel: Si n est premier et si a < n, alors a^(n-1) ≡ 1 mod n.                                 Conséquences:
Soit a < n,  Si a ^(n-1) ≠ 1 mod n alors n n’est pas premier.                                                 Ce test élimine mais ne confirme pas. Il est possible de déterminer si le nombre n’est pas premier. La réciproque est fausse.

Test de Lucas-Lehmer:

Si p est premier, le nombre de Mersenne Mp d’indice p est défini par: Mp = 2^p  –  1 .       On définit une suite Sn par S2 = 4 et Sn = (S(n-1))² – 2.                                                        Alors, Mp est premier ssi Mp divise Sp, c’est-à-dire: Sp ≡ 0 mod p.