From 352860f73c90d0fee5042d9254eb9f69096e0a46 Mon Sep 17 00:00:00 2001
From: PesceWanda
Date: Mon, 16 May 2016 11:33:43 +0200
Subject: [PATCH] ga
---
_posts/2016-05-15-genetic-alg.md | 96 +++++++
_site/archive/index.html | 1 +
_site/atom.xml | 89 ++++++-
_site/index.html | 114 ++++++--
_site/index.php/archives/100.html | 18 +-
_site/index.php/archives/101.html | 18 +-
_site/index.php/archives/102.html | 18 +-
_site/index.php/archives/104.html | 18 +-
_site/index.php/archives/13.html | 18 +-
_site/index.php/archives/16.html | 18 +-
_site/index.php/archives/171.html | 18 +-
_site/index.php/archives/177.html | 18 +-
_site/index.php/archives/19.html | 18 +-
_site/index.php/archives/198.html | 18 +-
_site/index.php/archives/207.html | 18 +-
_site/index.php/archives/23.html | 18 +-
_site/index.php/archives/27.html | 18 +-
_site/index.php/archives/32.html | 18 +-
_site/index.php/archives/36.html | 18 +-
_site/index.php/archives/37.html | 18 +-
_site/index.php/archives/44.html | 18 +-
_site/index.php/archives/46.html | 18 +-
_site/index.php/archives/47.html | 18 +-
_site/index.php/archives/51.html | 18 +-
_site/index.php/archives/55.html | 18 +-
_site/index.php/archives/57.html | 18 +-
_site/index.php/archives/60.html | 18 +-
_site/index.php/archives/66.html | 18 +-
_site/index.php/archives/67.html | 18 +-
_site/index.php/archives/70.html | 18 +-
_site/index.php/archives/73.html | 18 +-
_site/index.php/archives/78.html | 18 +-
_site/index.php/archives/82.html | 18 +-
_site/index.php/archives/85.html | 18 +-
_site/index.php/archives/87.html | 18 +-
_site/index.php/archives/9.html | 18 +-
_site/index.php/archives/90.html | 18 +-
_site/index.php/archives/99.html | 18 +-
_site/page2/index.html | 88 ++----
_site/page3/index.html | 154 +++++------
_site/page4/index.html | 227 +++++++---------
_site/page5/index.html | 178 ++++++++++---
_site/page6/index.html | 73 ++---
_site/page7/index.html | 143 +++-------
_site/page8/index.html | 172 +++++++-----
_site/page9/index.html | 62 +++++
.../2016/04/02/blog-migrated/index.html | 18 +-
.../2016/04/02/buridan_donkey/index.html | 18 +-
.../2016/04/10/lifehacks/index.html | 18 +-
.../04/10/short-lesson-from-reddit/index.html | 18 +-
.../2016/04/17/kpd-player/index.html | 18 +-
.../2016/04/17/wright-nakamoto/index.html | 18 +-
.../2016/05/03/satoshisignature/index.html | 18 +-
.../2016/05/15/genetic-alg/index.html | 252 ++++++++++++++++++
54 files changed, 1457 insertions(+), 930 deletions(-)
create mode 100644 _posts/2016-05-15-genetic-alg.md
create mode 100644 _site/pescewanda/2016/05/15/genetic-alg/index.html
diff --git a/_posts/2016-05-15-genetic-alg.md b/_posts/2016-05-15-genetic-alg.md
new file mode 100644
index 0000000..35abfde
--- /dev/null
+++ b/_posts/2016-05-15-genetic-alg.md
@@ -0,0 +1,96 @@
+---
+title: Interpolation using a genetic algorithm
+date: 2016-05-15
+author: pesceWanda
+layout: post
+categories:
+ - PesceWanda
+tags:
+ - AI
+ - Genetic algorithm
+ - python
+ - programming
+---
+This weekend I was in Milan to get a Visa and I had the opportunity to work with a friend, Michele, on genetic algorithms.
+It was the first time I dig up in such field and it was very exciting.
+In this post I want to explain some bits of our work.
+
+## A brief introduction to GA
+A genetic algorithm is a search/optimization algorithm that uses an heuristic approach to reduce the search space and evolve gradually to a solution.
+
+#### Population
+It is an algorithm that has its root in the theory of natural selectioni by Charles Darwin.
+The main components of a GA are:
+
+- the population, that concentrate all the available solutions at a given time;
+- the fitness function, that gives an approximation of the quality of the solution codified by a given member of the population.
+
+In a GA the first thing to do is to generate a population.
+
+A population is a group of objects with given attributes, usually a string, and they contains in some form the solution (usually inside a string); the first population is randomly generated and contains a big number of solutions, but not every solution (this is not a bruteforce approach).
+
+After this step the fitness functions evaluates the quality of every solution that a given member carries: the evaluation should be considered from a bottom up point of view.
+
+#### Reproduction
+Now, as in Darwin's theory of evolution, the member of the population are going to "reproduce": two members are going to be coupled to generate a new member of the second generation and every child member will contain a solution that is the product of the original genes of their parent members.
+
+This time the reproduction of the population into a second one is not entirely random. The fitness function gives us an approximation of the quality of every gene that a member carries and by the rule of the "survival by the fittest" the probability that a member is going to reproduce with another one is proportional to the quality of its genes.
+
+When we have a second generation of members we can recur on our GA and generate a third generation. From this point we can recur until we converge to a solution that is common to every member, or at least that is suited to our needs.
+
+#### Mutation
+Actually, in some cases, a mutation function can be added, so that, like in real world, some times the genes are "scrambled" indipendently from the fitness function.
+
+There is more to a GA, for example we could talk about possible ways of storing the genes inside a member or when to use mutation, anyway I want to stop here and continue with an analysis of my problem.
+
+## Interpolating a function using a GA
+Me and Michele decided to spend some time developing a little python script to explore GA capabilities and we decided to interpolate some points on a cartesian plane.
+
+Our program, that is available [here](http://francescomecca.eu:3000/pesceWanda/interpol_genetica) uses a class to define the various members of the population and a string for the genes, a class as well for the points on the plane.
+
+The fitness function is not as precise as it should be because this is only a proof of concept:
+
+{% highlight python %}
+mutationProbability = 0.1
+rangeLimit = 5
+def fitness(item, pointList, n):
+ value = 0
+ for p in pointList:
+ y = 0
+ for i in range(n):
+ y += item.gene[i] * pow(p.x, i)
+ result = 1 - (abs (p.y - y) / rangeLimit)
+ if result < 0:
+ result = 0
+ value += result
+ return value / n
+{% endhighlight %}
+
+item is just a member of the population, poinList is the list of points and n is the number of points (n - 1 is the grade of the function).
+
+```
+for i in range(n):
+ y += item.gene[i] * pow(p.x, i)
+```
+
+this piece of code gives us the value of the function encoded in the genes in the points of pointList;
+
+```
+result = 1 - (abs (p.y - y) / rangeLimit)
+ if result < 0:
+ result = 0
+```
+
+while here the script stores 1 - the previous result because if the GA has yield a good result there should be distance = 0 from the function evaluated and the points; If this is the case, the fitness function should attribute the highest possible reproduction probability for that member.
+At the end the fitness function returns the total value over the number of points evaluated.
+
+As you can see this fitness function is by no means an optimal one. The reproduction probability is higher for functions that crosses some points and are really distant from others rather than for functions that are closer to every point but crosses none.
+Anyway for simple cases the GA yields good results, as an example for points (0 0), (1 4), (2 9) one of the member with the highest reproduction probability has this function in its genes:
+
+```
+-0.0487839869993989 * x^0 + 4.600339125358671 * x^1 + -0.2780958075230644 * x^2
+```
+
+that crosses this points: (0 -0.0488), (1 4.2735), (2 8.0395) given 80 iterations, initial population of 600 members and a two digit approximation.
+
+For a more precise computation a higher population size and a really high number of iterations should be used.
diff --git a/_site/archive/index.html b/_site/archive/index.html
index c655e4b..4b28995 100644
--- a/_site/archive/index.html
+++ b/_site/archive/index.html
@@ -132,6 +132,7 @@
diff --git a/_site/atom.xml b/_site/atom.xml
index e6690a2..7eeae54 100644
--- a/_site/atom.xml
+++ b/_site/atom.xml
@@ -4,7 +4,7 @@
Caught in the Net
- 2016-05-03T23:41:09+02:00
+ 2016-05-16T11:33:30+02:00francescomecca.euFrancesco Mecca
@@ -12,6 +12,93 @@
+
+ Interpolation using a genetic algorithm
+
+ 2016-05-15T00:00:00+02:00
+ francescomecca.eu/pescewanda/2016/05/15/genetic-alg
+ <p>This weekend I was in Milan to get a Visa and I had the opportunity to work with a friend, Michele, on genetic algorithms.
+It was the first time I dig up in such field and it was very exciting.
+In this post I want to explain some bits of our work.</p>
+
+<h2>A brief introduction to GA</h2>
+
+<p>A genetic algorithm is a search/optimization algorithm that uses an heuristic approach to reduce the search space and evolve gradually to a solution.</p>
+
+<h4>Population</h4>
+
+<p>It is an algorithm that has its root in the theory of natural selectioni by Charles Darwin.
+The main components of a GA are:</p>
+
+<ul>
+<li>the population, that concentrate all the available solutions at a given time;</li>
+<li>the fitness function, that gives an approximation of the quality of the solution codified by a given member of the population.</li>
+</ul>
+
+<p>In a GA the first thing to do is to generate a population.</p>
+
+<p>A population is a group of objects with given attributes, usually a string, and they contains in some form the solution (usually inside a string); the first population is randomly generated and contains a big number of solutions, but not every solution (this is not a bruteforce approach).</p>
+
+<p>After this step the fitness functions evaluates the quality of every solution that a given member carries: the evaluation should be considered from a bottom up point of view.</p>
+
+<h4>Reproduction</h4>
+
+<p>Now, as in Darwin's theory of evolution, the member of the population are going to "reproduce": two members are going to be coupled to generate a new member of the second generation and every child member will contain a solution that is the product of the original genes of their parent members.</p>
+
+<p>This time the reproduction of the population into a second one is not entirely random. The fitness function gives us an approximation of the quality of every gene that a member carries and by the rule of the "survival by the fittest" the probability that a member is going to reproduce with another one is proportional to the quality of its genes.</p>
+
+<p>When we have a second generation of members we can recur on our GA and generate a third generation. From this point we can recur until we converge to a solution that is common to every member, or at least that is suited to our needs.</p>
+
+<h4>Mutation</h4>
+
+<p>Actually, in some cases, a mutation function can be added, so that, like in real world, some times the genes are "scrambled" indipendently from the fitness function.</p>
+
+<p>There is more to a GA, for example we could talk about possible ways of storing the genes inside a member or when to use mutation, anyway I want to stop here and continue with an analysis of my problem.</p>
+
+<h2>Interpolating a function using a GA</h2>
+
+<p>Me and Michele decided to spend some time developing a little python script to explore GA capabilities and we decided to interpolate some points on a cartesian plane.</p>
+
+<p>Our program, that is available <a href="http://francescomecca.eu:3000/pesceWanda/interpol_genetica">here</a> uses a class to define the various members of the population and a string for the genes, a class as well for the points on the plane.</p>
+
+<p>The fitness function is not as precise as it should be because this is only a proof of concept:</p>
+
+<figure class="highlight"><pre><code class="language-python" data-lang="python"><span class="n">mutationProbability</span> <span class="o">=</span> <span class="mf">0.1</span>
+<span class="n">rangeLimit</span> <span class="o">=</span> <span class="mi">5</span>
+<span class="k">def</span> <span class="nf">fitness</span><span class="p">(</span><span class="n">item</span><span class="p">,</span> <span class="n">pointList</span><span class="p">,</span> <span class="n">n</span><span class="p">):</span>
+ <span class="n">value</span> <span class="o">=</span> <span class="mi">0</span>
+ <span class="k">for</span> <span class="n">p</span> <span class="ow">in</span> <span class="n">pointList</span><span class="p">:</span>
+ <span class="n">y</span> <span class="o">=</span> <span class="mi">0</span>
+ <span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">n</span><span class="p">):</span>
+ <span class="n">y</span> <span class="o">+=</span> <span class="n">item</span><span class="o">.</span><span class="n">gene</span><span class="p">[</span><span class="n">i</span><span class="p">]</span> <span class="o">*</span> <span class="nb">pow</span><span class="p">(</span><span class="n">p</span><span class="o">.</span><span class="n">x</span><span class="p">,</span> <span class="n">i</span><span class="p">)</span>
+ <span class="n">result</span> <span class="o">=</span> <span class="mi">1</span> <span class="o">-</span> <span class="p">(</span><span class="nb">abs</span> <span class="p">(</span><span class="n">p</span><span class="o">.</span><span class="n">y</span> <span class="o">-</span> <span class="n">y</span><span class="p">)</span> <span class="o">/</span> <span class="n">rangeLimit</span><span class="p">)</span>
+ <span class="k">if</span> <span class="n">result</span> <span class="o"><</span> <span class="mi">0</span><span class="p">:</span>
+ <span class="n">result</span> <span class="o">=</span> <span class="mi">0</span>
+ <span class="n">value</span> <span class="o">+=</span> <span class="n">result</span>
+ <span class="k">return</span> <span class="n">value</span> <span class="o">/</span> <span class="n">n</span></code></pre></figure>
+
+<p>item is just a member of the population, poinList is the list of points and n is the number of points (n - 1 is the grade of the function).</p>
+<div class="highlight"><pre><code class="language-" data-lang="">for i in range(n):
+ y += item.gene[i] * pow(p.x, i)
+</code></pre></div>
+<p>this piece of code gives us the value of the function encoded in the genes in the points of pointList;</p>
+<div class="highlight"><pre><code class="language-" data-lang="">result = 1 - (abs (p.y - y) / rangeLimit)
+ if result < 0:
+ result = 0
+</code></pre></div>
+<p>while here the script stores 1 - the previous result because if the GA has yield a good result there should be distance = 0 from the function evaluated and the points; If this is the case, the fitness function should attribute the highest possible reproduction probability for that member.
+At the end the fitness function returns the total value over the number of points evaluated.</p>
+
+<p>As you can see this fitness function is by no means an optimal one. The reproduction probability is higher for functions that crosses some points and are really distant from others rather than for functions that are closer to every point but crosses none.
+Anyway for simple cases the GA yields good results, as an example for points (0 0), (1 4), (2 9) one of the member with the highest reproduction probability has this function in its genes:</p>
+<div class="highlight"><pre><code class="language-" data-lang="">-0.0487839869993989 * x^0 + 4.600339125358671 * x^1 + -0.2780958075230644 * x^2
+</code></pre></div>
+<p>that crosses this points: (0 -0.0488), (1 4.2735), (2 8.0395) given 80 iterations, initial population of 600 members and a two digit approximation.</p>
+
+<p>For a more precise computation a higher population size and a really high number of iterations should be used.</p>
+
+
+
Why Wright's proof is a fake
diff --git a/_site/index.html b/_site/index.html
index 7f989ee..f8d1662 100644
--- a/_site/index.html
+++ b/_site/index.html
@@ -129,6 +129,97 @@
This weekend I was in Milan to get a Visa and I had the opportunity to work with a friend, Michele, on genetic algorithms.
+It was the first time I dig up in such field and it was very exciting.
+In this post I want to explain some bits of our work.
+
+
A brief introduction to GA
+
+
A genetic algorithm is a search/optimization algorithm that uses an heuristic approach to reduce the search space and evolve gradually to a solution.
+
+
Population
+
+
It is an algorithm that has its root in the theory of natural selectioni by Charles Darwin.
+The main components of a GA are:
+
+
+
the population, that concentrate all the available solutions at a given time;
+
the fitness function, that gives an approximation of the quality of the solution codified by a given member of the population.
+
+
+
In a GA the first thing to do is to generate a population.
+
+
A population is a group of objects with given attributes, usually a string, and they contains in some form the solution (usually inside a string); the first population is randomly generated and contains a big number of solutions, but not every solution (this is not a bruteforce approach).
+
+
After this step the fitness functions evaluates the quality of every solution that a given member carries: the evaluation should be considered from a bottom up point of view.
+
+
Reproduction
+
+
Now, as in Darwin's theory of evolution, the member of the population are going to "reproduce": two members are going to be coupled to generate a new member of the second generation and every child member will contain a solution that is the product of the original genes of their parent members.
+
+
This time the reproduction of the population into a second one is not entirely random. The fitness function gives us an approximation of the quality of every gene that a member carries and by the rule of the "survival by the fittest" the probability that a member is going to reproduce with another one is proportional to the quality of its genes.
+
+
When we have a second generation of members we can recur on our GA and generate a third generation. From this point we can recur until we converge to a solution that is common to every member, or at least that is suited to our needs.
+
+
Mutation
+
+
Actually, in some cases, a mutation function can be added, so that, like in real world, some times the genes are "scrambled" indipendently from the fitness function.
+
+
There is more to a GA, for example we could talk about possible ways of storing the genes inside a member or when to use mutation, anyway I want to stop here and continue with an analysis of my problem.
+
+
Interpolating a function using a GA
+
+
Me and Michele decided to spend some time developing a little python script to explore GA capabilities and we decided to interpolate some points on a cartesian plane.
+
+
Our program, that is available here uses a class to define the various members of the population and a string for the genes, a class as well for the points on the plane.
+
+
The fitness function is not as precise as it should be because this is only a proof of concept:
+
+
+
+
item is just a member of the population, poinList is the list of points and n is the number of points (n - 1 is the grade of the function).
+
for i in range(n):
+ y += item.gene[i] * pow(p.x, i)
+
+
this piece of code gives us the value of the function encoded in the genes in the points of pointList;
+
result = 1 - (abs (p.y - y) / rangeLimit)
+ if result < 0:
+ result = 0
+
+
while here the script stores 1 - the previous result because if the GA has yield a good result there should be distance = 0 from the function evaluated and the points; If this is the case, the fitness function should attribute the highest possible reproduction probability for that member.
+At the end the fitness function returns the total value over the number of points evaluated.
+
+
As you can see this fitness function is by no means an optimal one. The reproduction probability is higher for functions that crosses some points and are really distant from others rather than for functions that are closer to every point but crosses none.
+Anyway for simple cases the GA yields good results, as an example for points (0 0), (1 4), (2 9) one of the member with the highest reproduction probability has this function in its genes:
Even though you may be nervous about talking to random people, the worst you can get is "Go away".
-
Do not buy your girlfriend or wife flowers in an attempt to make nice after you pissed her off. Every
-time she looks at the flowers, she will just be reminded that you pissed her off, unless she has the
-memory span of a goldfish.
-
To keep lettuce fresh for days longer, wrap it in paper towels instead of inside a plastic bag, it
-works very well.
-
Cubes of sugar in biscuit barrels help the biscuits stay crisp.
-
To clear your sinuses, eat a lot of wasabi. It will hurt tons, but your sinuses clear almost
-instantaneously.
diff --git a/_site/index.php/archives/16.html b/_site/index.php/archives/16.html
index ce1e180..4606517 100644
--- a/_site/index.php/archives/16.html
+++ b/_site/index.php/archives/16.html
@@ -173,6 +173,15 @@ David Gomez, un ex agente dell’FBI , ha detto che il velivolo di sorveglia
diff --git a/_site/index.php/archives/207.html b/_site/index.php/archives/207.html
index 2386c83..7d2a3cd 100644
--- a/_site/index.php/archives/207.html
+++ b/_site/index.php/archives/207.html
@@ -227,6 +227,15 @@ The original idea for the Buridan's donkey came from my mentor
+
diff --git a/_site/index.php/archives/27.html b/_site/index.php/archives/27.html
index 0d38c37..eff078e 100644
--- a/_site/index.php/archives/27.html
+++ b/_site/index.php/archives/27.html
@@ -205,6 +205,15 @@ Truecrypt permette di creare un volume crittografico che si presenta come un fil
diff --git a/_site/index.php/archives/47.html b/_site/index.php/archives/47.html
index f13fdb6..8a9d393 100644
--- a/_site/index.php/archives/47.html
+++ b/_site/index.php/archives/47.html
@@ -156,6 +156,15 @@ L’opera si trova a Berlino.
diff --git a/_site/index.php/archives/55.html b/_site/index.php/archives/55.html
index ce58027..3a1b646 100644
--- a/_site/index.php/archives/55.html
+++ b/_site/index.php/archives/55.html
@@ -158,6 +158,15 @@ L’attacco avviene attraverso l’uso di codice Javascript e analizza l
diff --git a/_site/index.php/archives/60.html b/_site/index.php/archives/60.html
index 6788920..eb2b268 100644
--- a/_site/index.php/archives/60.html
+++ b/_site/index.php/archives/60.html
@@ -168,6 +168,15 @@ Secondo alcuni amministartori del sito, tra cui OptimusCrime, Boneless vendette
diff --git a/_site/index.php/archives/67.html b/_site/index.php/archives/67.html
index d0b9f75..20bbc9a 100644
--- a/_site/index.php/archives/67.html
+++ b/_site/index.php/archives/67.html
@@ -186,6 +186,15 @@ In questo modo ed attraverso i cookie Facebook riesce a riunire la maggior parte
diff --git a/_site/index.php/archives/73.html b/_site/index.php/archives/73.html
index 935166a..ca61c19 100644
--- a/_site/index.php/archives/73.html
+++ b/_site/index.php/archives/73.html
@@ -158,6 +158,15 @@ Il payload è un tipo di shellcode, ovvero un piccolo pezzo di codice, che sfrut
diff --git a/_site/index.php/archives/85.html b/_site/index.php/archives/85.html
index 6234597..df1398b 100644
--- a/_site/index.php/archives/85.html
+++ b/_site/index.php/archives/85.html
@@ -197,6 +197,15 @@ I dati sono la risposta economica a: “Iscriviti, e’ gratis e lo sarà se
Even though you may be nervous about talking to random people, the worst you can get is "Go away".
+
Do not buy your girlfriend or wife flowers in an attempt to make nice after you pissed her off. Every
+time she looks at the flowers, she will just be reminded that you pissed her off, unless she has the
+memory span of a goldfish.
+
To keep lettuce fresh for days longer, wrap it in paper towels instead of inside a plastic bag, it
+works very well.
+
Cubes of sugar in biscuit barrels help the biscuits stay crisp.
+
To clear your sinuses, eat a lot of wasabi. It will hurt tons, but your sinuses clear almost
+instantaneously.
Dura 56 secondi il video di Vester Lee Flanagan che testimonia l’omicidio in prima persona di due giornalisti in Virginia durante un live broadcast televisivo. Durante l’inseguimento nel quale si e` tolto la vita Flanagan ha caricato su Twitter e Facebook il video dell’uccisione in prima persona.
-
-
Twitter e Facebook hanno tempestivamente censurato il video e rimosso l’account dell’omicida ed alcune emittenti televisive (come SkyTg24) hanno scelto allo stesso modo di non pubblicare il video in diretta.
-
-
To publish or not to publish?
-
-
E` quindi una decisione giusta quella di non pubblicare il video?
1) Someone who attacks during a live telecast is seeking attention. Obviously you need to report the attack, but I would not broadcast the attack or make it available online.
-
-
[…]
-
-
4) I see no ethical justification for publishing videos shot by the killer. That is the ultimate in attention-seeking behavior.
-
-
5) You can report the mental health issues, gun access issues and other issues that a story presents without publicizing or profiling the killer.
-
-
6) My focus would be on the people who were killed or injured. They warrant media attention, not the person who was seeking it.
-
-
-
1)Una persona che attacca durante una trasmissione in diretta e` alla ricerca di attenzione. Naturalmente si deve rendere noto l’atto, ma io non lo trasmetterei ne lo pubblicherei online.
-
-
[…]
-
-
4) Non vedo giustificazioni etiche per pubblicare il video: e` l’esempio piu` eclatante di ricerca di attenzioni.
-
-
5) Puoi discutere sui problemi mentali, la questione relativa al facile accesso alle armi e tutti gli altri problemi di questa storia senza mostrare o pubblicizzare il killer.
-
-
6) Io mi concentrerei sulle persone ferite o uccise. Loro meritano l’attenzione dei media, non la persona che la cercava.
-
-
Famoso in un istante
-
-
E` ovvio che Flanagan stesse cercando i suoi 15 minuti di fama con questo atto, ma a mio parere non ci sarebbe riuscito se non sfruttando nuovi strumenti quali lo smartphone e i social network. Molto difficilmente sarebbe riuscito 20 anni fa utilizzando i media tradizionali a filmarsi in prima persona in una situazione del genere e a rendere cosi` tante persone testimoni del suo gesto.
-
-
Per questo non mi trovo d’accordo con Steve Buttry che afferma che il video non andrebbe reso disponibile online. i nuovi media hanno un ruolo diverso nella condivisione dei contenuti e soprattutto nel mantenimento della memoria storica. Un video del genere non aggiunge alcun valore investigativo o giornalistico al caso ma puo` ritenersi utile per analisi differenti, in primis psicologiche, ed ha sicuramente un valore storico (da quanto conosco e` il primo video in prima persona di un omicidio con queste dinamiche).
-
-
Lo specchio nero
-
-
Chi come me e` un grande fan della serie TV Black Mirror avra` sicuramente ricordato il primo episodio della serie: National Anthem.
-
-
Questo episodio e` un’analisi sottile e dettagliata della natura umana, che di fronte ad eventi che suscitano un cosi` grande clamore sospendono ogni giudizio morale e dimenticano il motivo per cui si trovano a guardare cio` che hanno di fronte.
-
-
Allo stesso modo trovo miserevole poter assistere a giornalisti ed emittenti televisive che per attirare spettatori nelle proprie reti mostrano il video integrale.
-
-
Come in National Anthem chi ha perpetrato il crimine non ci ha costretto ad essere complici del suo gesto.
Dura 56 secondi il video di Vester Lee Flanagan che testimonia l’omicidio in prima persona di due giornalisti in Virginia durante un live broadcast televisivo. Durante l’inseguimento nel quale si e` tolto la vita Flanagan ha caricato su Twitter e Facebook il video dell’uccisione in prima persona.
+
+
Twitter e Facebook hanno tempestivamente censurato il video e rimosso l’account dell’omicida ed alcune emittenti televisive (come SkyTg24) hanno scelto allo stesso modo di non pubblicare il video in diretta.
+
+
To publish or not to publish?
+
+
E` quindi una decisione giusta quella di non pubblicare il video?
1) Someone who attacks during a live telecast is seeking attention. Obviously you need to report the attack, but I would not broadcast the attack or make it available online.
+
+
[…]
+
+
4) I see no ethical justification for publishing videos shot by the killer. That is the ultimate in attention-seeking behavior.
+
+
5) You can report the mental health issues, gun access issues and other issues that a story presents without publicizing or profiling the killer.
+
+
6) My focus would be on the people who were killed or injured. They warrant media attention, not the person who was seeking it.
+
+
+
1)Una persona che attacca durante una trasmissione in diretta e` alla ricerca di attenzione. Naturalmente si deve rendere noto l’atto, ma io non lo trasmetterei ne lo pubblicherei online.
+
+
[…]
+
+
4) Non vedo giustificazioni etiche per pubblicare il video: e` l’esempio piu` eclatante di ricerca di attenzioni.
+
+
5) Puoi discutere sui problemi mentali, la questione relativa al facile accesso alle armi e tutti gli altri problemi di questa storia senza mostrare o pubblicizzare il killer.
+
+
6) Io mi concentrerei sulle persone ferite o uccise. Loro meritano l’attenzione dei media, non la persona che la cercava.
+
+
Famoso in un istante
+
+
E` ovvio che Flanagan stesse cercando i suoi 15 minuti di fama con questo atto, ma a mio parere non ci sarebbe riuscito se non sfruttando nuovi strumenti quali lo smartphone e i social network. Molto difficilmente sarebbe riuscito 20 anni fa utilizzando i media tradizionali a filmarsi in prima persona in una situazione del genere e a rendere cosi` tante persone testimoni del suo gesto.
+
+
Per questo non mi trovo d’accordo con Steve Buttry che afferma che il video non andrebbe reso disponibile online. i nuovi media hanno un ruolo diverso nella condivisione dei contenuti e soprattutto nel mantenimento della memoria storica. Un video del genere non aggiunge alcun valore investigativo o giornalistico al caso ma puo` ritenersi utile per analisi differenti, in primis psicologiche, ed ha sicuramente un valore storico (da quanto conosco e` il primo video in prima persona di un omicidio con queste dinamiche).
+
+
Lo specchio nero
+
+
Chi come me e` un grande fan della serie TV Black Mirror avra` sicuramente ricordato il primo episodio della serie: National Anthem.
+
+
Questo episodio e` un’analisi sottile e dettagliata della natura umana, che di fronte ad eventi che suscitano un cosi` grande clamore sospendono ogni giudizio morale e dimenticano il motivo per cui si trovano a guardare cio` che hanno di fronte.
+
+
Allo stesso modo trovo miserevole poter assistere a giornalisti ed emittenti televisive che per attirare spettatori nelle proprie reti mostrano il video integrale.
+
+
Come in National Anthem chi ha perpetrato il crimine non ci ha costretto ad essere complici del suo gesto.
Con l’avvento dell’informatizzazione e` notevolmente mutata la modalita` con cui l’avvocato svolge la propria professione; sinteticamente si puo` arrivare ad affermare che al di la` della partecipazione alle udienze e il ricevimento dei clienti, tutta l’attivita` si puo` svolgere con il computer nel proprio studio, senza alzarsi dalla poltrona.
-
-
Per quanto mi riguarda vorrei premettere che io sono un avvocato dipendente di un ente pubblico (l’INAIL) e pertanto unico mio cliente e` l’Istituto che io difendo sia in ambito giudiziario (cause legali) che extragiudiziario (composizione bonaria delle liti).
-
-
L’avvento dell’informatica ha modificato il modo di lavorare nella sua globalita`, vediamo pertanto le singole fasi dell’attivita`.
p { margin-bottom: 0.1in; direction: ltr; color: rgb(0, 0, 0); line-height: 120%; orphans: 2; widows: 2; }p.western { font-family: “Times New Roman”,serif; font-size: 12pt; }p.cjk { font-family: “Times New Roman”,serif; font-size: 12pt; }p.ctl { font-family: “Times New Roman”,serif; font-size: 12pt; }a:link { color: rgb(0, 0, 255); } Allorche` mi viene sottoposto un caso da esaminare devo effettuare ricerche sullo stato della giurisprudenza (esame delle pronunce dei Tribunali che hanno trattato casi analoghi) al fine di inquadrare giuridicamente la questione: in passato le ricerche venivano effettuate sfogliando le varie riviste giuridiche cartacee (pubblicate per lo piu` con raccolte che uscivano con cadenza trimestrale o addirittura annuale) dopo aver estrapolato dagli indici tutte le sentenze emesse su quel determinato argomento: la ricerca effettuata in questo modo richiedeva molto tempo dovendo passare in rassegna una molteplicità di riviste (generalmente la ricerca si effettua su un arco di tempo decennale) ed inoltre si era nell’impossibilita` di esaminare la giurisprudenza piu` recente; dal punto di vista pratico e logistico l’avvocato doveva disporre di grandi librerie per conservare le riviste cartacee. Debbo pero` riconoscere che la ricerca cartacea offriva la possibilità di venire a conoscenza di sentenze emesse su altri argomenti (che rivestivano interesse per altre pratiche: cio` comporta un grande arricchimento professionale) in quanto passando in rassegna gli indici l’attenzione cadeva anche su altre fattispecie.
-
-
Ora la ricerca viene fatta digitalmente, si consultano le varie banche dati online e inserendo la parola chiave (argomento o riferimenti normativi o anche autorita` giudiziaria) si viene subito in contatto con numerosissime sentenze. In questo modo la ricerca e` piu` veloce, puo` essere agevolmente fatta su archi temporali molto lunghi ma soprattutto si possono conoscere sentenze emesse di recente in quanto la pubblicazione non passa attraverso la stampa; tra l’altro per un avvocato è molto importante conoscere le ultime sentenze in senso temporale in quanto e` utilissimo aggiornarsi sugli indirizzi giurisprudenziali più recenti. C’e` anche un altro aspetto dal punto di vista pratico: non e` piu` necessario avere i grandi spazi richiesti dalle librerie (tale fatto non e` da sottovalutare viste le peculiarita` del mercato immobiliare).
-
-
Il limite della ricerca telematica (rispetto alla ricerca cartacea) e` costituito dal fatto che la ricerca si rivela molto piu` specifica, e` molto più circoscritta e quindi non si viene “casualmente ” a conoscenza di sentenze che riguardano altre fattispecie; cio` secondo il mio parere e` un aspetto negativo, che mi fa un po` rimpiangere la ricerca cartacea, perche` in quel caso, come ho precisato sopra, si raccoglievano molti stimoli (forse oggi si privilegia il fattore tempo?).
-
-
Posta, email e PEC
-
-
Un’altra grande rivoluzione si e` verificata nell’ambito della corrispondenza che l’avvocato deve tenere con il cliente e con la controparte.
-
-
Mentre prima tutte le lettere e diffide venivano inoltrate mediante il servizio postale richiedendo quindi la necessita` di recarsi presso l’Ufficio stesso e, sostenere il costo della spedizione ed attendere il recapito della corrispondenza ora tale attivita` viene svolta con l’email, cosicche` non si esce dallo studio, non si sostengono costi ed inoltre il recapito e` immediato e anche la risposta puo` sopraggiungere immediatamente: e` evidente la facilita` di comunicazione! A cio` si aggiunga che ora con l’introduzione della PEC le mail hanno le stesso valore delle raccomandate postali. Io ritengo che tale sistema innovativo sia importantissimo in quanto velocizza le comunicazioni ed abbatte i costi, eliminando anche i rischi dei disguidi postali (materiale perdita della corrispondenza). A cio` si aggiunga anche che avendo tutta la corrispondenza come archivio digitale la successiva consultazione della stessa puo` avvenire in modo agevole ed immediato.
-
-
Processo Telematico
-
-
Ora (dal primo gennaio 2015) anche gli uffici Giudiziari hanno preso atto dell’attivita` informatica permettendo la possibilita` di formare fascicoli digitali. Tutte le cause possono essere introdotte telematicamente cosicche` l’avvocato puo` depositare atti e comunicarli alla controparte senza uscire dal proprio studio. Allo stesso modo riceve le comunicazione dagli uffici del Tribunale (la cancelleria) e gli atti dei colleghi. In questo modo per depositare un atto non ci si deve piu` materialmente recare in Tribunale ed essere legati agli orari di apertura dell’Ufficio, in quanto la legge permette che l’avvocato trasmetta l’atto entro le ore 24 del giorno di scadenza , con la conseguenza che i tempi si sono dilatati, anche se in effetti non e` consigliabile fare un atto all’ultimo minuto in quanto talvolta (per lo meno come si sta verificando in questa prima fase) la trasmissione telematica non va a buon fine, cosicche` si puo` incorrere in decadenze. Anche in questo caso tutte le attivita` sono velocizzate e soprattutto mi arrivano immediatamente le comunicazioni del Tribunale, il che` nella mia attivita` non e` di poco conto.
-
-
Acquisizione Documentazione
-
-
Un altro aspetto molto importante che ha agevolato l’attivita` legale e` quello che riguarda il reperimento della documentazione necessaria per la corretta e completa istruzione della pratica.
-
-
Nel momento in cui l’avvocato ha necessita` di visionare e/o allegare un documento, lo richiede al cliente o agli uffici preposti (es: uffici finanziari, enti locali, camere di commercio…) a mezzo mail e sollecitamente la controparte glielo puo` trasmettere telematicamente: il cliente non deve recarsi dall’avvocato per portare il documento ne` l’avvocato deve accedere ai vari uffici (come al catasto per richiedere una visura). Pensate in una grande citta` quanto tempo (e costi) richiedono tali attivita`, ora ogni cosa puo` essere fatta indipendentemente dal luogo in cui ci si trova!
-
-
Indagini sui Social Network
-
-
Ora l’avvocato puo` raccogliere notizie anche solo digitando nomi e fatti sui motori di ricerca: in questo modo vengo a conoscenza di indirizzi, recapiti telefonici e altre notizie che riguardano il soggetto e/o il fatto che mi interessa. Nello specifico premetto che la mia attivita` si esplica anche nell’esame di pratiche che riguardano il riconoscimento di eventi lesivi come infortuni sul lavoro. Precisamente determinate categorie di lavoratori possono chiedere all’INAIL il riconoscimento di eventi lesivi come infortuni sul lavoro con conseguenti erogazioni economiche e sanitarie dal parte dell’INAIL in loro favore. Facciamo l’esempio che un lavoratore denunci una lesione come conseguente all’esplicamento della propria attivita` lavorativa adducendo una descrizione del fatto: e` capitato che facendo un riscontro su Facebook il soggetto raccontava di essersi fatto male mentre giocava a calcetto: in questo caso l’evento non viene riconosciuto e addirittura si potrebbe presentare una denuncia per truffa. Recentemente gli organi di informazione hanno divulgato il caso di quel signore che usufruiva dei permessi INPS per assistere il genitore invalido mentre scriveva su Facebook che in quei medesimi giorni era all’estero per seguire i campionati sportivi!
-
-
Quindi cio` che voglio dire e` che l’accesso ai social network costituisce in sistema per reperire informazioni e/o riscontri circa fatti denunciati dagli utenti, raccogliendo così elementi utili per esaminare compiutamente una pratica e arrivare così ad una piu` puntuale decisione legale.
Cio` che ho messo in evidenza sono gli aspetti e le novita` piu` eclatanti introdotte dalla informatizzazione e che a mio parere sono molto positivi (soprattutto per tutti gli aspetti di velocizzazione ed efficienza che pongono in essere) permettendo anche di svolgere l’attivita` legale con maggiore approfondimento (avendo a disposizione di fatto piu` strumenti) e maggiore tempestivita`, considerando anche in quest’ambito le potenzialita` della ulteriore strumentazione informatica di cui il professionista puo` dotarsi.
Con l’avvento dell’informatizzazione e` notevolmente mutata la modalita` con cui l’avvocato svolge la propria professione; sinteticamente si puo` arrivare ad affermare che al di la` della partecipazione alle udienze e il ricevimento dei clienti, tutta l’attivita` si puo` svolgere con il computer nel proprio studio, senza alzarsi dalla poltrona.
+
+
Per quanto mi riguarda vorrei premettere che io sono un avvocato dipendente di un ente pubblico (l’INAIL) e pertanto unico mio cliente e` l’Istituto che io difendo sia in ambito giudiziario (cause legali) che extragiudiziario (composizione bonaria delle liti).
+
+
L’avvento dell’informatica ha modificato il modo di lavorare nella sua globalita`, vediamo pertanto le singole fasi dell’attivita`.
p { margin-bottom: 0.1in; direction: ltr; color: rgb(0, 0, 0); line-height: 120%; orphans: 2; widows: 2; }p.western { font-family: “Times New Roman”,serif; font-size: 12pt; }p.cjk { font-family: “Times New Roman”,serif; font-size: 12pt; }p.ctl { font-family: “Times New Roman”,serif; font-size: 12pt; }a:link { color: rgb(0, 0, 255); } Allorche` mi viene sottoposto un caso da esaminare devo effettuare ricerche sullo stato della giurisprudenza (esame delle pronunce dei Tribunali che hanno trattato casi analoghi) al fine di inquadrare giuridicamente la questione: in passato le ricerche venivano effettuate sfogliando le varie riviste giuridiche cartacee (pubblicate per lo piu` con raccolte che uscivano con cadenza trimestrale o addirittura annuale) dopo aver estrapolato dagli indici tutte le sentenze emesse su quel determinato argomento: la ricerca effettuata in questo modo richiedeva molto tempo dovendo passare in rassegna una molteplicità di riviste (generalmente la ricerca si effettua su un arco di tempo decennale) ed inoltre si era nell’impossibilita` di esaminare la giurisprudenza piu` recente; dal punto di vista pratico e logistico l’avvocato doveva disporre di grandi librerie per conservare le riviste cartacee. Debbo pero` riconoscere che la ricerca cartacea offriva la possibilità di venire a conoscenza di sentenze emesse su altri argomenti (che rivestivano interesse per altre pratiche: cio` comporta un grande arricchimento professionale) in quanto passando in rassegna gli indici l’attenzione cadeva anche su altre fattispecie.
+
+
Ora la ricerca viene fatta digitalmente, si consultano le varie banche dati online e inserendo la parola chiave (argomento o riferimenti normativi o anche autorita` giudiziaria) si viene subito in contatto con numerosissime sentenze. In questo modo la ricerca e` piu` veloce, puo` essere agevolmente fatta su archi temporali molto lunghi ma soprattutto si possono conoscere sentenze emesse di recente in quanto la pubblicazione non passa attraverso la stampa; tra l’altro per un avvocato è molto importante conoscere le ultime sentenze in senso temporale in quanto e` utilissimo aggiornarsi sugli indirizzi giurisprudenziali più recenti. C’e` anche un altro aspetto dal punto di vista pratico: non e` piu` necessario avere i grandi spazi richiesti dalle librerie (tale fatto non e` da sottovalutare viste le peculiarita` del mercato immobiliare).
+
+
Il limite della ricerca telematica (rispetto alla ricerca cartacea) e` costituito dal fatto che la ricerca si rivela molto piu` specifica, e` molto più circoscritta e quindi non si viene “casualmente ” a conoscenza di sentenze che riguardano altre fattispecie; cio` secondo il mio parere e` un aspetto negativo, che mi fa un po` rimpiangere la ricerca cartacea, perche` in quel caso, come ho precisato sopra, si raccoglievano molti stimoli (forse oggi si privilegia il fattore tempo?).
+
+
Posta, email e PEC
+
+
Un’altra grande rivoluzione si e` verificata nell’ambito della corrispondenza che l’avvocato deve tenere con il cliente e con la controparte.
+
+
Mentre prima tutte le lettere e diffide venivano inoltrate mediante il servizio postale richiedendo quindi la necessita` di recarsi presso l’Ufficio stesso e, sostenere il costo della spedizione ed attendere il recapito della corrispondenza ora tale attivita` viene svolta con l’email, cosicche` non si esce dallo studio, non si sostengono costi ed inoltre il recapito e` immediato e anche la risposta puo` sopraggiungere immediatamente: e` evidente la facilita` di comunicazione! A cio` si aggiunga che ora con l’introduzione della PEC le mail hanno le stesso valore delle raccomandate postali. Io ritengo che tale sistema innovativo sia importantissimo in quanto velocizza le comunicazioni ed abbatte i costi, eliminando anche i rischi dei disguidi postali (materiale perdita della corrispondenza). A cio` si aggiunga anche che avendo tutta la corrispondenza come archivio digitale la successiva consultazione della stessa puo` avvenire in modo agevole ed immediato.
+
+
Processo Telematico
+
+
Ora (dal primo gennaio 2015) anche gli uffici Giudiziari hanno preso atto dell’attivita` informatica permettendo la possibilita` di formare fascicoli digitali. Tutte le cause possono essere introdotte telematicamente cosicche` l’avvocato puo` depositare atti e comunicarli alla controparte senza uscire dal proprio studio. Allo stesso modo riceve le comunicazione dagli uffici del Tribunale (la cancelleria) e gli atti dei colleghi. In questo modo per depositare un atto non ci si deve piu` materialmente recare in Tribunale ed essere legati agli orari di apertura dell’Ufficio, in quanto la legge permette che l’avvocato trasmetta l’atto entro le ore 24 del giorno di scadenza , con la conseguenza che i tempi si sono dilatati, anche se in effetti non e` consigliabile fare un atto all’ultimo minuto in quanto talvolta (per lo meno come si sta verificando in questa prima fase) la trasmissione telematica non va a buon fine, cosicche` si puo` incorrere in decadenze. Anche in questo caso tutte le attivita` sono velocizzate e soprattutto mi arrivano immediatamente le comunicazioni del Tribunale, il che` nella mia attivita` non e` di poco conto.
+
+
Acquisizione Documentazione
+
+
Un altro aspetto molto importante che ha agevolato l’attivita` legale e` quello che riguarda il reperimento della documentazione necessaria per la corretta e completa istruzione della pratica.
+
+
Nel momento in cui l’avvocato ha necessita` di visionare e/o allegare un documento, lo richiede al cliente o agli uffici preposti (es: uffici finanziari, enti locali, camere di commercio…) a mezzo mail e sollecitamente la controparte glielo puo` trasmettere telematicamente: il cliente non deve recarsi dall’avvocato per portare il documento ne` l’avvocato deve accedere ai vari uffici (come al catasto per richiedere una visura). Pensate in una grande citta` quanto tempo (e costi) richiedono tali attivita`, ora ogni cosa puo` essere fatta indipendentemente dal luogo in cui ci si trova!
+
+
Indagini sui Social Network
+
+
Ora l’avvocato puo` raccogliere notizie anche solo digitando nomi e fatti sui motori di ricerca: in questo modo vengo a conoscenza di indirizzi, recapiti telefonici e altre notizie che riguardano il soggetto e/o il fatto che mi interessa. Nello specifico premetto che la mia attivita` si esplica anche nell’esame di pratiche che riguardano il riconoscimento di eventi lesivi come infortuni sul lavoro. Precisamente determinate categorie di lavoratori possono chiedere all’INAIL il riconoscimento di eventi lesivi come infortuni sul lavoro con conseguenti erogazioni economiche e sanitarie dal parte dell’INAIL in loro favore. Facciamo l’esempio che un lavoratore denunci una lesione come conseguente all’esplicamento della propria attivita` lavorativa adducendo una descrizione del fatto: e` capitato che facendo un riscontro su Facebook il soggetto raccontava di essersi fatto male mentre giocava a calcetto: in questo caso l’evento non viene riconosciuto e addirittura si potrebbe presentare una denuncia per truffa. Recentemente gli organi di informazione hanno divulgato il caso di quel signore che usufruiva dei permessi INPS per assistere il genitore invalido mentre scriveva su Facebook che in quei medesimi giorni era all’estero per seguire i campionati sportivi!
+
+
Quindi cio` che voglio dire e` che l’accesso ai social network costituisce in sistema per reperire informazioni e/o riscontri circa fatti denunciati dagli utenti, raccogliendo così elementi utili per esaminare compiutamente una pratica e arrivare così ad una piu` puntuale decisione legale.
Cio` che ho messo in evidenza sono gli aspetti e le novita` piu` eclatanti introdotte dalla informatizzazione e che a mio parere sono molto positivi (soprattutto per tutti gli aspetti di velocizzazione ed efficienza che pongono in essere) permettendo anche di svolgere l’attivita` legale con maggiore approfondimento (avendo a disposizione di fatto piu` strumenti) e maggiore tempestivita`, considerando anche in quest’ambito le potenzialita` della ulteriore strumentazione informatica di cui il professionista puo` dotarsi.
- Questa e` una guida pratica all’uso di LUKS su Linux.
-
-
-
- LUKS e` un acronimo che sta per Linux Unified Key Setup ed e` il formato standard per il disk-encryption, creato nel 2004, si distingue da molti altri formati crittografici per la particolareggiata documentazione e soprattutto per esser stato sottoposto ad auditing, ovvero il processo di controllo del codice sorgente per verificarne l’integrita`, l’efficacia e la robustezza degli algoritmi e l’assenza di backdoor o bug software critici.
-
-
-
- Il primo passo per utilizzare LUKS e` installarlo sulla propria distribuzione, o controllare se e` gia` presente.
-
-
-
- Preparare la partizione
-
-
-
- In questo esempio la partizione /dev/sda1 viene formattata e sovrascritta.
-
-
-
# cryptsetup -y -v luksFormat /dev/sda1
-WARNING!
-========
-This will overwrite data on /dev/sda1 irrevocably.
-Are you sure? (Type uppercase yes): YES
-Enter LUKS passphrase:
-Verify passphrase:
-Command successful.
-
-
In questo post useremo i parametri di default che sono:
ed equivalgono al precedente; se si vuole adottare un livello di sicurezza maggiore e personalizzata si puo` eseguire
-
-
#cryptsetup benchmark
-
-
e scegliere il cypher e l’algoritmo che si preferisce. Si ricorda che il numero relativo alla dimensione della chiave e` la meta` di quello usato da LUKS, ovvero 512 bit in questo caso.
-
-
Il prossimo comando inizializza il volume dopo aver inserito la chiave per il volume. Il terzo argomento e` il nome che si vuole scegliere per la partizione.
-
-
La password scelta non puo` esser in nessun modo recuperata.
-
-
#cryptsetup luksOpen /dev/sda1 testvolume
-Enter passphrase for /dev/sda1:
-
-
- Ora /dev/sda1 correttemente inizializzato viene mappato su /dev/mapper/testvolume. Per verificare lo stato del volume:
-
Ora ci si deve assicurare che in caso di un’analisi esterna ogni dato venga visto come una serie random di zero ed uno senza valore e assicurarsi che non ci sia un leak di informazioni relative all’uso del disco:
-
-
# dd if=/dev/zero of=/dev/mapper/testvolume
-
-
Poi creare un filesystem, in questo caso ext4
-
-
# mkfs.ext4 /dev/mapper/testvolume
-
-
- Montare e chiudere il disco
-
-
-
Per montare da /dev/mapper il disco e poterlo utilizzare digitare:
+ Questa e` una guida pratica all’uso di LUKS su Linux.
+
+
+
+ LUKS e` un acronimo che sta per Linux Unified Key Setup ed e` il formato standard per il disk-encryption, creato nel 2004, si distingue da molti altri formati crittografici per la particolareggiata documentazione e soprattutto per esser stato sottoposto ad auditing, ovvero il processo di controllo del codice sorgente per verificarne l’integrita`, l’efficacia e la robustezza degli algoritmi e l’assenza di backdoor o bug software critici.
+
+
+
+ Il primo passo per utilizzare LUKS e` installarlo sulla propria distribuzione, o controllare se e` gia` presente.
+
+
+
+ Preparare la partizione
+
+
+
+ In questo esempio la partizione /dev/sda1 viene formattata e sovrascritta.
+
+
+
# cryptsetup -y -v luksFormat /dev/sda1
+WARNING!
+========
+This will overwrite data on /dev/sda1 irrevocably.
+Are you sure? (Type uppercase yes): YES
+Enter LUKS passphrase:
+Verify passphrase:
+Command successful.
+
+
In questo post useremo i parametri di default che sono:
ed equivalgono al precedente; se si vuole adottare un livello di sicurezza maggiore e personalizzata si puo` eseguire
+
+
#cryptsetup benchmark
+
+
e scegliere il cypher e l’algoritmo che si preferisce. Si ricorda che il numero relativo alla dimensione della chiave e` la meta` di quello usato da LUKS, ovvero 512 bit in questo caso.
+
+
Il prossimo comando inizializza il volume dopo aver inserito la chiave per il volume. Il terzo argomento e` il nome che si vuole scegliere per la partizione.
+
+
La password scelta non puo` esser in nessun modo recuperata.
+
+
#cryptsetup luksOpen /dev/sda1 testvolume
+Enter passphrase for /dev/sda1:
+
+
+ Ora /dev/sda1 correttemente inizializzato viene mappato su /dev/mapper/testvolume. Per verificare lo stato del volume:
+
Ora ci si deve assicurare che in caso di un’analisi esterna ogni dato venga visto come una serie random di zero ed uno senza valore e assicurarsi che non ci sia un leak di informazioni relative all’uso del disco:
+
+
# dd if=/dev/zero of=/dev/mapper/testvolume
+
+
Poi creare un filesystem, in questo caso ext4
+
+
# mkfs.ext4 /dev/mapper/testvolume
+
+
+ Montare e chiudere il disco
+
+
+
Per montare da /dev/mapper il disco e poterlo utilizzare digitare:
Google inc. sta progettando di dare ai suoi utenti android più controllo riguardo a quali informazioni le applicazioni possono accedere, hanno affermato le persone che si occupano di ciò.
-
-
Il sistema operativo android di Google è impostato per dare agli utenti una scelta più dettagliata a quali contenuti possono accedere le app, secondo le richieste delle persone, che hanno chiesto di non essere identificate affinchè la faccenda rimanga privata. Questo potrebbe includere foto, contatti o la posizione. Un annuncio del cambiamento, che metterebbe Android più in linea con l’ iOS Apple Inc., è previsto per la conferenza degli sviluppatori di Google in San Francisco questo mese, ha detto una delle persone.
La Mountain View, società con sede in California l’anno scorso ha semplificato come le persone siano informate su ciò a cui un app sta accedendo. Sono gli utenti a decidere se l’app può essere scaricata. La nuova impostazione da la possibilità all’utente di scegliere a cosa può accedere un’app.
-
-
Google sta aggiungendo alcune funzionalità per i propri servizi di telefonia mobile che cerca di attirare gli utenti che sempre più vanno su Internet tramite i loro dispositivi wireless. L’Android ha avuto l’81% del mercato mondiale degli smartphone mentre l’Apple il 15%, secondo Gartner Inc.
-
-
La pressione su Android cresce in alcune parti del mondo. Nei cinque paesi più gandi d’Europa, la sua quota è scesa al 69 per cento nel primo trimestre dal 72 per cento rispetto all’anno precedente, secondo Kantar worldpanel.com. La quota per iOS è salita al 20,3 per cento dal 18,6 per cento, Kantar ha riferito.
Google inc. sta progettando di dare ai suoi utenti android più controllo riguardo a quali informazioni le applicazioni possono accedere, hanno affermato le persone che si occupano di ciò.
+
+
Il sistema operativo android di Google è impostato per dare agli utenti una scelta più dettagliata a quali contenuti possono accedere le app, secondo le richieste delle persone, che hanno chiesto di non essere identificate affinchè la faccenda rimanga privata. Questo potrebbe includere foto, contatti o la posizione. Un annuncio del cambiamento, che metterebbe Android più in linea con l’ iOS Apple Inc., è previsto per la conferenza degli sviluppatori di Google in San Francisco questo mese, ha detto una delle persone.
La Mountain View, società con sede in California l’anno scorso ha semplificato come le persone siano informate su ciò a cui un app sta accedendo. Sono gli utenti a decidere se l’app può essere scaricata. La nuova impostazione da la possibilità all’utente di scegliere a cosa può accedere un’app.
+
+
Google sta aggiungendo alcune funzionalità per i propri servizi di telefonia mobile che cerca di attirare gli utenti che sempre più vanno su Internet tramite i loro dispositivi wireless. L’Android ha avuto l’81% del mercato mondiale degli smartphone mentre l’Apple il 15%, secondo Gartner Inc.
+
+
La pressione su Android cresce in alcune parti del mondo. Nei cinque paesi più gandi d’Europa, la sua quota è scesa al 69 per cento nel primo trimestre dal 72 per cento rispetto all’anno precedente, secondo Kantar worldpanel.com. La quota per iOS è salita al 20,3 per cento dal 18,6 per cento, Kantar ha riferito.
Lo scorso febbraio 4 ricercatori della Columbia University hanno ideato un attacco side channel in grado di penetrare la cache dei processori intel piu` recenti di qualsiasi OS.
-L’attacco avviene attraverso l’uso di codice Javascript e analizza la cache di terzo livello del processore. Il pdf tecnico e` disponibile a questo indirizzo.
-
-
Di seguito una breve spiegazione dell’attacco.
-– Attacco side channel: i dati vengono estratti da fenomeni fisici correlati al funzionamento del terminale: ritardi nella risposta, consumo della cpu,voltaggio e altro se misurati in maniera molto precisa e in correlazione ad eventi esterni permettono di capire che informazioni stava processando la CPU.
-
-
- -Requisiti: un qualsiasi fra i browser piu` popolari, un processore intel 32 o 64 bit, almeno qualche minuto sulla pagina infetta.
-
-
- -Come avviene l’attacco: il codice Javascript permette al vettore di occupare una piccola parte di cache di cache e poi va a misurare il ritardo in una nuova lettura e controllando se altri processi la stanno usando. Se questa azione viene compiuta per tutte le “linee” della cache senza interruzioni permette di avere dati relativi all’utilizzo della CPU. Con analizi avanzate si possono stabilire a partire daqueste informazioni in alcuni casi i movimenti del mouse, l’accesso alle risorse, i tasti premuti.
-
-
-
-
- -Come evitare l’infezione: non permettere al browser di attivare i javascript e evitare di tenere aperte pagine web mentre si compiono azioni sensibili, questi due sono gli unici metodi al momento. I ricercatori hanno deciso di non rilasciare alcun proof of concepit prima del rilascio di patch per i browser.
-
-
Lo scorso febbraio 4 ricercatori della Columbia University hanno ideato un attacco side channel in grado di penetrare la cache dei processori intel piu` recenti di qualsiasi OS.
+L’attacco avviene attraverso l’uso di codice Javascript e analizza la cache di terzo livello del processore. Il pdf tecnico e` disponibile a questo indirizzo.
+
+
Di seguito una breve spiegazione dell’attacco.
+– Attacco side channel: i dati vengono estratti da fenomeni fisici correlati al funzionamento del terminale: ritardi nella risposta, consumo della cpu,voltaggio e altro se misurati in maniera molto precisa e in correlazione ad eventi esterni permettono di capire che informazioni stava processando la CPU.
+
+
+ -Requisiti: un qualsiasi fra i browser piu` popolari, un processore intel 32 o 64 bit, almeno qualche minuto sulla pagina infetta.
+
+
+ -Come avviene l’attacco: il codice Javascript permette al vettore di occupare una piccola parte di cache di cache e poi va a misurare il ritardo in una nuova lettura e controllando se altri processi la stanno usando. Se questa azione viene compiuta per tutte le “linee” della cache senza interruzioni permette di avere dati relativi all’utilizzo della CPU. Con analizi avanzate si possono stabilire a partire daqueste informazioni in alcuni casi i movimenti del mouse, l’accesso alle risorse, i tasti premuti.
+
+
+
+
+ -Come evitare l’infezione: non permettere al browser di attivare i javascript e evitare di tenere aperte pagine web mentre si compiono azioni sensibili, questi due sono gli unici metodi al momento. I ricercatori hanno deciso di non rilasciare alcun proof of concepit prima del rilascio di patch per i browser.
+
+
- Trattando argomenti quali l’anonimato e la privacy, non si può fare a meno di parlare di uno dei movimenti più rappresentativi di queste due tematiche, ovvero Anonymous. Questo movimento nasce nel 2003, e per il suo nome prende ispirazione dal nickname usato nei siti di imageboard, siti nei quali un thread può essere iniziato solo con un immagine, quali per esempio 4chan, 711chan, dove chi commentava senza identificarsi appariva come “anonymous”, e da qui si incominciò a identificare anonymous come una persona reale.
-
-
-
- Anonymous non ha un leader, è un insieme di persone, o anche singoli, spesso provenienti dagli stessi siti di imageboard citati prima, che agiscono con un fine comune che può essere visto nella libertà di espressione, infatti le attività mosse da questo gruppo mirano alla pubblicazione di informazioni riservate, forme di protesta quali attacchi DDoS o proteste in strada, le quali all’inizio fecero capire l’importanza che stava acquisendo il movimento, infatti si scoprirono essere numerosi coloro che aderirono nelle varie città del mondo.
-
-
-
- La grandezza di cui gode Anonymous è data dal web, grazie al quale persone con un ideologia comune si sono potute incontrare, hanno potuto organizzarsi e dare vita a quello che ad oggi è uno dei fenomeni più conosciuti su internet.
-
-
-
- Uno dei simboli che identifica Anonymous è la maschera di Guy Fawkes, famoso cospiratore inglese, che spesso viene usata nelle proteste per nascondere il volto dei protestanti, e celarne quindi l’identità.
-
- Le varie attività svolte da questo gruppo, grazie alle quali ha ottenuto sempre più visibilità, sono diverse, quale ad esempio quello del 2010 quando il sito di WikiLeaks pubblicò documenti diplomatici segreti del governo americano, e quest’ultimo a causa di ciò fece forti pressioni per interrompere tali pubblicazioni, ovviamente ciò attirò l’attenzione di anonymous che iniziò a sostenere il sito, iniziando a lanciare attacchi DDoS contro siti quali Amazon.com, PayPal, MasterCard, Visa e la banca svizzera i quali avevano dimostrato un comportamento anti-WikiLeaks, perché stopparono l’afflusso di donazioni al sito.
-
-
- Un altro evento molto importante fu quando il sito Megaupload venne chiuso dall’FBI, e in seguito a ciò anonymous rese impossibile l’accesso a siti governativi americani, scatenando quella che fu chiamata W W W W (World Wide Web War), ovvero uno degli attacchi da parte del gruppo più grande e importante realizzato sul web.
-
-
-
- Infine uno degli eventi più recenti è stato quello contro lo Stato Islamico, infatti gli anonymous hanno bloccato e sospeso tutti gli account social di coloro che avessero a che fare con l’organizzazione dell’ISIS, a causa di azioni terroristiche condotte da quest’ultima, e tuttora danno la caccia agli esponenti del movimento per arrestarlo.
-
+ Trattando argomenti quali l’anonimato e la privacy, non si può fare a meno di parlare di uno dei movimenti più rappresentativi di queste due tematiche, ovvero Anonymous. Questo movimento nasce nel 2003, e per il suo nome prende ispirazione dal nickname usato nei siti di imageboard, siti nei quali un thread può essere iniziato solo con un immagine, quali per esempio 4chan, 711chan, dove chi commentava senza identificarsi appariva come “anonymous”, e da qui si incominciò a identificare anonymous come una persona reale.
+
+
+
+ Anonymous non ha un leader, è un insieme di persone, o anche singoli, spesso provenienti dagli stessi siti di imageboard citati prima, che agiscono con un fine comune che può essere visto nella libertà di espressione, infatti le attività mosse da questo gruppo mirano alla pubblicazione di informazioni riservate, forme di protesta quali attacchi DDoS o proteste in strada, le quali all’inizio fecero capire l’importanza che stava acquisendo il movimento, infatti si scoprirono essere numerosi coloro che aderirono nelle varie città del mondo.
+
+
+
+ La grandezza di cui gode Anonymous è data dal web, grazie al quale persone con un ideologia comune si sono potute incontrare, hanno potuto organizzarsi e dare vita a quello che ad oggi è uno dei fenomeni più conosciuti su internet.
+
+
+
+ Uno dei simboli che identifica Anonymous è la maschera di Guy Fawkes, famoso cospiratore inglese, che spesso viene usata nelle proteste per nascondere il volto dei protestanti, e celarne quindi l’identità.
+
+ Le varie attività svolte da questo gruppo, grazie alle quali ha ottenuto sempre più visibilità, sono diverse, quale ad esempio quello del 2010 quando il sito di WikiLeaks pubblicò documenti diplomatici segreti del governo americano, e quest’ultimo a causa di ciò fece forti pressioni per interrompere tali pubblicazioni, ovviamente ciò attirò l’attenzione di anonymous che iniziò a sostenere il sito, iniziando a lanciare attacchi DDoS contro siti quali Amazon.com, PayPal, MasterCard, Visa e la banca svizzera i quali avevano dimostrato un comportamento anti-WikiLeaks, perché stopparono l’afflusso di donazioni al sito.
+
+
+ Un altro evento molto importante fu quando il sito Megaupload venne chiuso dall’FBI, e in seguito a ciò anonymous rese impossibile l’accesso a siti governativi americani, scatenando quella che fu chiamata W W W W (World Wide Web War), ovvero uno degli attacchi da parte del gruppo più grande e importante realizzato sul web.
+
+
+
+ Infine uno degli eventi più recenti è stato quello contro lo Stato Islamico, infatti gli anonymous hanno bloccato e sospeso tutti gli account social di coloro che avessero a che fare con l’organizzazione dell’ISIS, a causa di azioni terroristiche condotte da quest’ultima, e tuttora danno la caccia agli esponenti del movimento per arrestarlo.
+
- siamo tre studenti della facolta` di ingegneria del Politecnico di Torino ed abbiamo aperto questo blog come strumento di giudizio per il corso di Rivoluzione Digitale.
-
-
-
-
-
-
- Aprire un blog per noi e` un gesto molto significativo: siamo nati nel 1995 percio` possiamo essere considerati “nativi digitali” ed abbiamo assistito ad una sempre piu` larga, per certe prospettive globale espansione del mondo di internet e dei computer e toccato con mano le conseguenze che questa espansione ha avuto sulla societa`.
-
-
-
- Sia che si pensi alle BBS degli anni 70 o ai social networks di oggi il Web e` stato ed e` tutt’ora in gran parte il prodotto dei contenuti degli utenti che ogni volta che compiono un azione online lasciano tracce digitali e anche inconsapevolmente permettono l’espansione del mondo digitale.
-
-
-
-
-
- Il blog e` lo strumento che noi nativi digitali consapevoli abbiamo scelto per lasciare la nostra impronta in rete con lo stesso spirito con cui si accende una lanterna cinese, con la consapevolezza che ogni strumento di comunicazione e attivismo e` un piccolo passo verso un mondo piu’ democratico.
-
-
-
-
-
- I temi che ci proponiamo di trattare riguardano il mondo del digitale ma con particolare attenzione all’anonimato e alla privacy, parole che per alcuni non hanno piu` senso nel mondo del Web 2.0.
-
-
-
- Per noi queste due parole invece sono sempre piu` rilevanti, anzi fondamentali per costituire l’identita` di un cittadino digitale, di un netizen non miope e ben attento agli abusi da parte dei poteri forti nell’era digitale.
-
-
-
- Ci opponiamo alle parole dell’onorevole Tiziano Motti che sostiene che: “L’anonimato in rete e’ il contrario della democrazia che la rete stessa offre”, anzi crediamo che sia un presupposto necessario per una societa` libera e condizione necessaria per un uso autonomo e partecipativo della rete.
-
+ siamo tre studenti della facolta` di ingegneria del Politecnico di Torino ed abbiamo aperto questo blog come strumento di giudizio per il corso di Rivoluzione Digitale.
+
+
+
+
+
+
+ Aprire un blog per noi e` un gesto molto significativo: siamo nati nel 1995 percio` possiamo essere considerati “nativi digitali” ed abbiamo assistito ad una sempre piu` larga, per certe prospettive globale espansione del mondo di internet e dei computer e toccato con mano le conseguenze che questa espansione ha avuto sulla societa`.
+
+
+
+ Sia che si pensi alle BBS degli anni 70 o ai social networks di oggi il Web e` stato ed e` tutt’ora in gran parte il prodotto dei contenuti degli utenti che ogni volta che compiono un azione online lasciano tracce digitali e anche inconsapevolmente permettono l’espansione del mondo digitale.
+
+
+
+
+
+ Il blog e` lo strumento che noi nativi digitali consapevoli abbiamo scelto per lasciare la nostra impronta in rete con lo stesso spirito con cui si accende una lanterna cinese, con la consapevolezza che ogni strumento di comunicazione e attivismo e` un piccolo passo verso un mondo piu’ democratico.
+
+
+
+
+
+ I temi che ci proponiamo di trattare riguardano il mondo del digitale ma con particolare attenzione all’anonimato e alla privacy, parole che per alcuni non hanno piu` senso nel mondo del Web 2.0.
+
+
+
+ Per noi queste due parole invece sono sempre piu` rilevanti, anzi fondamentali per costituire l’identita` di un cittadino digitale, di un netizen non miope e ben attento agli abusi da parte dei poteri forti nell’era digitale.
+
+
+
+ Ci opponiamo alle parole dell’onorevole Tiziano Motti che sostiene che: “L’anonimato in rete e’ il contrario della democrazia che la rete stessa offre”, anzi crediamo che sia un presupposto necessario per una societa` libera e condizione necessaria per un uso autonomo e partecipativo della rete.
+
diff --git a/_site/pescewanda/2016/04/02/buridan_donkey/index.html b/_site/pescewanda/2016/04/02/buridan_donkey/index.html
index 4f0372d..259f5ac 100644
--- a/_site/pescewanda/2016/04/02/buridan_donkey/index.html
+++ b/_site/pescewanda/2016/04/02/buridan_donkey/index.html
@@ -164,6 +164,15 @@ The bot can be added to your contact list by simply searching for
+
diff --git a/_site/pescewanda/2016/04/17/kpd-player/index.html b/_site/pescewanda/2016/04/17/kpd-player/index.html
index 65637c8..cdbbd66 100644
--- a/_site/pescewanda/2016/04/17/kpd-player/index.html
+++ b/_site/pescewanda/2016/04/17/kpd-player/index.html
@@ -187,6 +187,15 @@ The source for our program is stored in my git
+
diff --git a/_site/pescewanda/2016/04/17/wright-nakamoto/index.html b/_site/pescewanda/2016/04/17/wright-nakamoto/index.html
index c7e27e8..82afa71 100644
--- a/_site/pescewanda/2016/04/17/wright-nakamoto/index.html
+++ b/_site/pescewanda/2016/04/17/wright-nakamoto/index.html
@@ -229,6 +229,15 @@ Ogni altra prova è discutibile e non necessaria.
diff --git a/_site/pescewanda/2016/05/03/satoshisignature/index.html b/_site/pescewanda/2016/05/03/satoshisignature/index.html
index 38a8e3f..720409d 100644
--- a/_site/pescewanda/2016/05/03/satoshisignature/index.html
+++ b/_site/pescewanda/2016/05/03/satoshisignature/index.html
@@ -210,6 +210,15 @@ At the end, I ask, why would you choose anything else than the easiest and most
This weekend I was in Milan to get a Visa and I had the opportunity to work with a friend, Michele, on genetic algorithms.
+It was the first time I dig up in such field and it was very exciting.
+In this post I want to explain some bits of our work.
+
+
A brief introduction to GA
+
+
A genetic algorithm is a search/optimization algorithm that uses an heuristic approach to reduce the search space and evolve gradually to a solution.
+
+
Population
+
+
It is an algorithm that has its root in the theory of natural selectioni by Charles Darwin.
+The main components of a GA are:
+
+
+
the population, that concentrate all the available solutions at a given time;
+
the fitness function, that gives an approximation of the quality of the solution codified by a given member of the population.
+
+
+
In a GA the first thing to do is to generate a population.
+
+
A population is a group of objects with given attributes, usually a string, and they contains in some form the solution (usually inside a string); the first population is randomly generated and contains a big number of solutions, but not every solution (this is not a bruteforce approach).
+
+
After this step the fitness functions evaluates the quality of every solution that a given member carries: the evaluation should be considered from a bottom up point of view.
+
+
Reproduction
+
+
Now, as in Darwin's theory of evolution, the member of the population are going to "reproduce": two members are going to be coupled to generate a new member of the second generation and every child member will contain a solution that is the product of the original genes of their parent members.
+
+
This time the reproduction of the population into a second one is not entirely random. The fitness function gives us an approximation of the quality of every gene that a member carries and by the rule of the "survival by the fittest" the probability that a member is going to reproduce with another one is proportional to the quality of its genes.
+
+
When we have a second generation of members we can recur on our GA and generate a third generation. From this point we can recur until we converge to a solution that is common to every member, or at least that is suited to our needs.
+
+
Mutation
+
+
Actually, in some cases, a mutation function can be added, so that, like in real world, some times the genes are "scrambled" indipendently from the fitness function.
+
+
There is more to a GA, for example we could talk about possible ways of storing the genes inside a member or when to use mutation, anyway I want to stop here and continue with an analysis of my problem.
+
+
Interpolating a function using a GA
+
+
Me and Michele decided to spend some time developing a little python script to explore GA capabilities and we decided to interpolate some points on a cartesian plane.
+
+
Our program, that is available here uses a class to define the various members of the population and a string for the genes, a class as well for the points on the plane.
+
+
The fitness function is not as precise as it should be because this is only a proof of concept:
+
+
+
+
item is just a member of the population, poinList is the list of points and n is the number of points (n - 1 is the grade of the function).
+
for i in range(n):
+ y += item.gene[i] * pow(p.x, i)
+
+
this piece of code gives us the value of the function encoded in the genes in the points of pointList;
+
result = 1 - (abs (p.y - y) / rangeLimit)
+ if result < 0:
+ result = 0
+
+
while here the script stores 1 - the previous result because if the GA has yield a good result there should be distance = 0 from the function evaluated and the points; If this is the case, the fitness function should attribute the highest possible reproduction probability for that member.
+At the end the fitness function returns the total value over the number of points evaluated.
+
+
As you can see this fitness function is by no means an optimal one. The reproduction probability is higher for functions that crosses some points and are really distant from others rather than for functions that are closer to every point but crosses none.
+Anyway for simple cases the GA yields good results, as an example for points (0 0), (1 4), (2 9) one of the member with the highest reproduction probability has this function in its genes: