Pro Bono Speech Support Deck on: a Parallel between one of Renaissance's literature masterpieces secret Codes and modern Art of Coding and its Security implications.
Copyright Note: All contents, trademarks, brands, models or designs of copyrighted materials are property of the respective copyright owner, please contact the author for removal, if inadvertently infringing it.
1 of 59
More Related Content
Divine gift of coding v.1.0 final public
1. IS CODING…
…A DIVINE GIFT ?
On how Dante Alighieri De-Coded and Re-Coded
scriptures itself, to help diffuse a sustainable path
to salvation ! The process of imaginification.
https://fossbytes.com/stackgan-ai-text-to-image-conversion/
https://arxiv.org/pdf/1612.03242v1.pdf
2. A BRIEF INTRODUCTION ABOUT MYSELF:
I’m THIS GUY here* ->
YEAH… I REALLY DO
ENJOY WORKING IN THE
WOODS!
https://it.linkedin.com/in/fabriziocilli
www.linkedin.com/pulse/posts/fabriziocilli* I know… I look much better in the picture …
3. A BRIEF INTRODUCTION ABOUT MYSELF:
!
* Special Thanks: Mom and Dad.
A not foreseeable amount of years
of Happiness , Fulfillment and
Personal Growth ! :D :D :D
** You don’t want to enter into details HERE.
Dante Alighieri himself would be
happy to see I am roughly «Nel
mezzo del cammin di nostra vita…» !
17
4. HOW IS CODING RELATED WITH ONE
OF THE WORLD’ RENOWN LITERATURE
MASTERPIECES
5. A short summary
The Divine Comedy (Italian: Divina Commedia [diˈviːna komˈmɛːdja]) is a
long narrative poem by Dante Alighieri, begun c. 1308 and completed in 1320,
a year before his death in 1321. It is widely considered the preeminent work
in Italian literature, and is seen as one of the greatest works of world
literature. The poem's imaginative vision of the afterlife is representative of
the medieval world-view as it had developed in the Western Church by the
14th century. It helped establish the Tuscan language, in which it is written, as
the standardized Italian language. It is divided into three
parts: Inferno, Purgatorio, and Paradiso.
6. Was Dante Alighieri a CODER !?
The Divine Comedy is composed of 14,233 lines that are divided into
three canticas (Italian plural cantiche) – Inferno (Hell), Purgatorio (Purgatory),
and Paradiso (Paradise) – each consisting of 33 cantos (Italian plural canti).
An initial canto, serving as an introduction to the poem and generally
considered to be part of the first cantica, brings the total number of cantos to
100.
It is generally accepted, however, that the first two cantos serve as a unitary
prologue to the entire epic, and that the opening two cantos of each cantica
serve as prologues to each of the three canticas.
7. Not just an algorithm for salvation, but encryption too !
Dante’s Initiate life and his relationship with Wisdom and its followers probably started
at the time when he wrote theVita Nuova (the New Life) and culminated during the
time he composed the Divine Comedy.
In the Inferno section (IX, 61) Dante explicitly says “O you possessed of sturdy
intellects, observe the teaching which is hidden here beneath the veil of verses so
obscure” and then he goes on to describe his spiritual journey starting with the
descent into the centre of the Earth (alchemical Black phase) and the climbing of the
mountain of Purgatory (White phase) to reach the stars and the vision of God (his
higher self).
As he enters Paradise (Red phase) he says: “I was within the heaven that receives
more of His light; and I saw things that he who from that height descends, forgets or
cannot tell”.
11. KEYS TO DECODE LIFE – An Algorithm for Salvation
START
GATES OF HELL
PURGATORY’S PINNACLE
ANGELICAL SPHERES
SALVATION
12. 1.1 CROSS HELL
1.2 MIND EACH SIN
1.3 ELABORATE
2.1 REPENT
2.2 CLIMB
2.3 REPENT & BEG
3.1 ASCEND
3.2 GLORIFY
3.3 DON’T STARE !
1
2
3
KEYS TO DECODE LIFE – An Algorithm for Salvation
13. DANTE’S CODING, A WAY TO SALVATION
AS READERS, WE STAND … GUIDED TO SALVATION
DANTE ON HIS SIDE, REFERRED TO SCRIPTURES
COULD HAVE HE MESSED THINGS UP, WHILE CODING IT ?
14. PITFALLS IN CODING THE DIVINE COMEDY
We can rest assured that our Hero had few risks, vulnerabilities and potential errors to
take care of … let’s try to actualize them.
MIDDLE AGES MODERN WORLD
Heresy and / or Blasphemy
Style or Rhymes Errors
Typos Syntax Error(s)
Coding Error(s)
Design Flaw(s) or hidden
Vulnerability(ies)
15. CONSEQUENCES
OUCH ! … if you think THIS could have been painful at the time…
MIDDLE AGES
Heresy and / or Blasphemy
Style or Rhymes Errors
Typos
Uhm … Well … It’s all about angry, picky
readers … He could have got some bad
feedback but given the means of typewriting
techniques… He would have survived…
Readability and the capability to intepret
could have led to miscomprehension and
misguidance, impairing the reader on its path
to salvation!
Roman Church had been pretty rough on
misbehaving christians over europe for two
centuries… Dante risked excommunication
in a time when inquisition was the norm…
16. PITFALLS IN CODING THE DIVINE COMEDY
…consider how many times THIS can happen !
MODERN WORLD
Syntax Error(s)
Coding Error(s)
Design Flaw(s) or hidden
Vulnerability(ies)
Syntax Errors in code may
spread across functions
jumping instructions
An error in coding (design or
writing) may break function
points outputs impairing an
entire application workflow
We could find ourselves
actively opening doors to
attackers due to our coding or
to known vulnerabilities!
17. HOW IS CODE SECURITY RELATING
WITH ONE OF THE WORLD’ RENOWN
LITERATURE MASTERPIECES
19. We Create Worlds
… Ok ok sorry, got caught by nostalgia … what I meant to share is :
20. They Created Worlds
We make a grand discussion on A.I. lately … Yet what were early applications of
Artificial Intelligence, aimed at, in the nineties? … Gaming ! Of course …
Now a … very brief «excursus» on Machine Learning techniques over the years…
State Machine
Finite State Machine
Behavior Tree
Planner Utility Based AI PROS & CONS !
21. …and it seems the game is still on…
Some “Worlds” worked out pretty well in the past …
The ULTIMA series consisted of 9 main games released from 1981 to 1999 and was an
extremely influential Computer RPG series that is still remembered fondly today.
https://youtu.be/0ru57c1HlV8
22. … in ever new ways …
Some worked out very oddly …
No Man’s Sky was one of the most expected procedural galaxy space exploration game of
2017. Resulted in a YEAR LONG developer’s drama @ HELLO GAMES.
https://www.youtube.com/watch?v=qAJymAKatnk
23. … and now… tell me THIS doesn’t look like a videogame* !
* NOPE … it’s the ACTUAL Tesla Autopilot Dashboard
24. … and now… tell me THIS doesn’t look like a videogame* !
* NOPE … it’s the ACTUAL SpaceX Console Rendering
25. Quick Facts / Realiy Check
What if my procedurally evolved gaming algorithm goes wrong ?
Virtuality
(http://bfy.tw/ECgM)
26. Quick Facts / Realiy Check Reality
What if my procedurally evolved self-driving algorithm, goes wrong ?
27. OK NOW WE UNDERSTOOD WE CAN
BUILD NICE VIDEOGAMES …
SO WHAT?
35. So well… it seems You, can Create Worlds
Designing an algorithm is not only solving a mathemathical and/or statistical problem via
«choices» made ahead of coding time. Not anymore at least.
Today, excelling is to be adaptive, lean, agile, not only during the design and develop
process but in code Release, Delivery and Integration phases too, staying agile and
adaptive right until production.
36. So well… it seems You, can Create Worlds
What once was front-end and back-end, is today’s full-stack.
Once Waterfall Delivery is today’s Continuous Delivery and Continuous Integration.
Once versioning, is nowaday’s Release Management.
Everything tends to become fluid, continuous.
Security Tests
Security Tests
37. So well… it seems You, can Create Worlds
Infrastructure becomes more and more a combination of Bare Metal + Code.
Devices are virtual, Network is virtual and even application servers are.
Truth is that Systems are becoming applications and Applications are becoming systems.
Settling ,once and for all, the DEV versus OPS dispute!
38. THIS IS CODE
THIS IS CODE
THE FIGHT IS OVER! WE CAN BE FRIENDS NOW!
MUST BE SECURE BY DESIGN
MUST BE SECURE BY DESIGN
39. BUT THERE’S MORE THAN DEV AND
OPS … THERE’S THE SEC* !
*nope, not talking Wall Street here…
42. Dante’s
Programming
Pitfalls
Dante Alighieri and the cases for Quality Assurance
Functio
nal
Non
Functio
nal
• Resilience
• Reliability
• Availability
• Recovery
• Syntax
• Structure
• IntrinsicQuality
• Transparency
• Modularit
y
Heresy and / or
Blasphemy
Style or
Rhymes Errors
Typos
43. US and the cases for Quality Assurance
Functio
nal
Non
Functio
nal
• Resilience
• Reliability
• Availability
• Recovery
• Syntax
• Structure
• IntrinsicQuality
• Transparency
• Modulari
ty
Modern
Programming
Pitfalls
44. OK, I SAW A TESLA CRASH, MISSILES
EXPLODING … YOU GOT ME SCARED
…WHAT CAN I DO TO PREVENT IT !?
45. EASY AS 1, 2, 3 …
More trust to
Wikipedia? …
Tzk..Tzk…!
46. …not quite!
Truth is … we, as humans … when we go wrong, we
often do it for distraction and with a loud BOOM !
…assuming this…
DESIGN…
with an
exploding
missile in
mind…
…we all shall …
PEER
REVIEW
DEVELOP…
escaping
inputs and
distilling
output as if
a demon is
chasing
us…
PEER
REVIEW
TEST …
as if
there’s no
tomorrow
at all…
PEER
REVIEW
DEPLOY …
ensuring
production
environment
doesn’t
nullify
previous
insomnias!
47. KEY TO SAFE DEVELOPMENT PRACTICES IDYLLIC
SECURITY
FIRST !
I SAY
WHEN WE
DEPLOY
Not if I’m
dissatisfied
with testing !
Visualizing 3D VR
attack patterns,
firing at bugs and
errors
* WHY A CAT? Everyone loves kittens ! **
**Skeptical?->https://en.wikipedia.org/wiki/Cats_and_the_Internet
48. KEY TO SAFE DEVELOPMENT PRACTICES REAL
INVOICE
SECURITY
FIRST!
I’ll never
make it in
time !!!
50. 1
2
3
QUICK RECAP …
Living a Sinless Life
from its early stages…
…means no hassle in
the AFTERLIFE™…
…translating into : you’ll
be, the safer you can be!
51. QUICK RECAP …
Living a Sinful Life
from its early stages…
…means «you know
what» in AFTERLIFE™…
…translating into : you’ve
earned Paradise at a cost!*
*IF…YouevenevermakeitoutofHellanPurgatoryINTACT!
52. One thing is for sure, living a careful and attentive SINLESS,
LIFE, led, in Dante’s view, to have less chellenges in its
wonderfully depicted EPIC AFTERLIFE™ JOURNEY.
Being a ruthless sinner during LIFE on earth, meant a
potentially INFINITE STRUGGLE in the AFTERLIFE with
potentially NO REMEDIATION OR FORGIVENESS.
53. SO, TO ACTUALIZE … IF SECURITY IS APPLIED EARLIER, THERE’S SOME CATCH !
YEAH, HE’S the first S in Secure SDLC
54. SO, TO ACTUALIZE … IF SECURITY IS APPLIED EARLIER, THERE’S SOME CATCH !
YEAH, HE’S the first S in Secure SDLC
DESIGN
DEPLOY
DEVELOP
3D SECURITY
55. IF ANYTHING … INVESTING IN KNOWLEDGE BASE ARCHIVES,
IDE INTEGRATION FOR SAST AND INTEGRATING THE DAST
PROCESS WITH THE INFRASTRUCTURE TESTING, IS THE
ONLY WAY TO AVOID DEVELOPER’S HELL !
GETTING THERE LATE MEANS A (MEASURED) INCREMENT IN
TESTING AND REMEDIATION OF ABOUT 30X COST.
IF WE DON’T SWIM UPSTREAM IN THE SSDLC, WE CAN SAY
GOODBYE TO DEVELOPER’S PARADISE !
59. NOT REALLY … WE TAKE IT FROM
HERE, TO A Q&A SESSION AND…
… LET’S KEEP REASONING ON THE AVAILABLE MEANS AND TECHNIQUES WE DO AND CAN ADOPT TO
MAKE ALL THIS APPLICABLE IN REAL, EVERYDAY WORK & LIFE!
Editor's Notes
NOTE:
To change the image on this slide, select the picture and delete it. Then click the Pictures icon in the placeholder to insert your own image.