Kryptografia molekularna

background image

Kryptografia molekularna

Krzysztof Ma

ć

kowiak

Doradztwo Gospodarcze DGA S.A., Politechnika Poznańska

www.kryptografia.com

Celem referatu jest przybli

ż

enie innej, alternatywnej metody ochrony danych.

Niekonwencjonalne podej

ś

cie, wykorzystuj

ą

ce cz

ą

steczki DNA, umo

ż

liwia

wykonywanie najwa

ż

niejszych operacji wykorzystywanych w ochronie danych

takich jak: szyfrowanie, ukrywanie danych (steganografia), tworzenie skrótu,
kryptoanaliza oraz identyfikacja osób. W referacie przedstawione b

ę

d

ą

podstawowe poj

ę

cia zwi

ą

zane z biologi

ą

(budowa cz

ą

steczki DNA, ła

ń

cuchowa

reakcja polimerazy, sekwencjonowanie) oraz bioinformatyk

ą

(komputer DNA i

jego porównanie z komputerami tradycyjnymi, wykorzystywanie DNA i RNA do
rozwi

ą

zywania problemów obliczeniowych). Omówione b

ę

d

ą

w skrócie

sposoby wykorzystywania cz

ą

steczek DNA w ochronie danych oraz dokładnie

przedstawione zostan

ą

przykładowe metody kryptografii i steganografii z

wykorzystaniem cz

ą

steczek DNA.

1. Budowa cz

ą

steczek DNA

Wszystkie organizmy

ż

ywe maj

ą

podobn

ą

molekularn

ą

budow

ę

biochemiczn

ą

.

Składaj

ą

si

ę

z tych samych molekuł: białek i kwasów nukleinowych. Kwasy

nukleinowe koduj

ą

informacj

ę

genetyczn

ą

potrzebn

ą

do wytwarzania białek i

przekazania tych reguł nast

ę

pnym pokoleniom.

Wyró

ż

niamy dwa rodzaje kwasów nukleinowych:



DNA – deoksyrybonukleinowy (deoxyribonucleic acid),



RNA – rybonukleinowy (ribonucleic acid).

Zasad

ę

budowy DNA odkryli w 1953 roku:



J.D. Watson i F.H. Crick – model helisy – Nagroda Nobla,



M. Wilkins – Nagroda Nobla,



R.E. Franklin.

DNA jest dwuniciow

ą

helis

ą

składaj

ą

c

ą

si

ę

z prostszych molekuł (nukleotydów).

Pojedynczy nukleotyd zbudowany jest z:



cz

ą

steczki cukru – deoksyrybozy (2’-deoxyribose), zawieraj

ą

cej pi

ęć

atomów

w

ę

gla, oznaczonych od 1’ do 5’.

background image



jednej grupy fosforanowej,



zasady azotowej.

Molekuły DNA ró

ż

ni

ą

si

ę

zasadami azotowymi. To wła

ś

nie zdefiniowana kolejno

ść

zasad zawartych w cz

ą

steczkach DNA stanowi no

ś

nik informacji genetycznych.

Wyró

ż

nia si

ę

cztery zasady azotowe: adenina A (adenine), guanina G (guanine),

cytozyna C (cytosine) oraz tymina T (tymine). Adenina i guanina to pochodne
puryny, natomiast cytozyna i tymina to pochodne pirymidyny.

Nukleotydy w zale

ż

no

ś

ci od wyst

ę

puj

ą

cych w nich zasad nazywamy:

deoksyadenylanem (z adenin

ą

), deoksyguanylanem (z guanin

ą

),

deoksycytydylanem (z cytozyn

ą

) oraz deoksytymidylanem (z tymin

ą

). Ła

ń

cuch DNA

jest oligonukleotydem.

Podwójn

ą

helis

ę

DNA otrzymujemy dzi

ę

ki wi

ą

zaniom zasad komplementarnych

(wi

ą

zania wodorowe, H-bond). Ze wzgl

ę

du na budow

ę

helisy, mo

ż

liwe s

ą

purynowo-

pirymidowe pary zasad. Jednym ze składników musi by

ć

puryna, drugim za

ś

piramidyna. Powstawanie par zasad (hybrydyzacja, parowanie) jest dodatkowo
ograniczone warunkami tworzenia si

ę

wi

ą

za

ń

wodorowych. Atomy wodoru w

zasadach zajmuj

ą

dokładnie zdefiniowane poło

ż

enie. Adenina nie mo

ż

e tworzy

ć

pary z cytozyn

ą

, gdy

ż

w jednej z pozycji wi

ążą

cych mogłyby znajdowa

ć

si

ę

dwa

wodory, natomiast w drugim brakowałoby wodoru (komplementarno

ść

zasad).

Podobnie guanina nie mo

ż

e tworzy

ć

pary z tymin

ą

. Mo

ż

liwe jest utworzenie

nast

ę

puj

ą

cych par: A-T (adenina-tymina) oraz G-C (guanina-cytozyna).

Pomi

ę

dzy zasadami wyst

ę

puj

ą

wi

ą

zania wodorowe:



podwójne pomi

ę

dzy A i T,



potrójne pomi

ę

dzy G i C.

Rdze

ń

DNA jest stały dla całej cz

ą

steczki i składa si

ę

z reszt deoksyrybozy

poł

ą

czonych resztami fosforanowymi. Zasady purynowe i pirymidowe znajduj

ą

si

ę

wewn

ą

trz ła

ń

cucha, a fosforany i reszty deoksyrybozy – na zewn

ą

trz helisy. Zasady

s

ą

skr

ę

cone wzgl

ę

dem siebie pod k

ą

tem 36˚. Zatem na całkowity skr

ę

t helisy

przypada 10 nukleotydów w ka

ż

dym ła

ń

cuchu.

Ła

ń

cuch DNA wykazuje polarno

ść

. Jeden z jego ko

ń

ców ma grup

ę

5’-OH, drugi

3’-OH. Przyjmuje si

ę

,

ż

e niezwi

ą

zana grupa 5’-OH jest ulokowana w nukleotydzie

znajduj

ą

cym si

ę

po lewej stronie zapisu, natomiast grupa 3’-OH po prawej stronie.

Zasady zapisujemy, wi

ę

c w kierunku 5’->3’.

Obie nici DNA maj

ą

przeciwn

ą

orientacj

ę

- s

ą

antyrównoległe. Znaj

ą

c jeden ła

ń

cuch,

mo

ż

na odtworzy

ć

drugi poprzez operacj

ę

odwrotnego dopełnienia (reverse

complementation).

background image

5’ … TAGACTTAGGC … 3’

3’ … ATCTGAATCCG … 5’

Jest to podstawa mechanizmu replikacji DNA w komórkach. W procesie replikacji,
bior

ą

udział enzymy, zwane polimerazami DNA, które w procesie tym czerpi

ą

instrukcje od matrycowych ła

ń

cuchów DNA.

Dwuniciowa helisa stabilizowana jest przez wi

ą

zania wodorowe mi

ę

dzy

komplementarnymi zasadami. Po ich zerwaniu dwa ła

ń

cuchy DNA z łatwo

ś

ci

ą

si

ę

rozdzielaj

ą

. Efekt ten mo

ż

na uzyska

ć

, przez ogrzewanie roztworu DNA, jego

zakwaszaniu albo alkalizacj

ę

, powoduj

ą

ce jonizacj

ę

zasad tzw. denaturacj

ę

. Proces

rozplatania dwuniciowej helisy nazywamy topnieniem. Temperatura topnienia zale

ż

y

od ilo

ś

ci odpowiednich par zasad. Musi by

ć

ona wy

ż

sza, gdy mamy wi

ę

cej par G-C,

które s

ą

stabilniejsze od par A-T.

1.1. Reakcja ła

ń

cuchowa polimerazy (PCR – polymerase chain reaction)

Reakcja PCR opracowana została przez K.B. Mullisa i M. Smitha, którzy otrzymali za
to odkrycie Nagrod

ę

Nobla w dziedzinie chemii w 1993 roku. Jest to reakcja

powielania (amplifikacji) okre

ś

lonej sekwencji DNA. Reakcja PCR wykorzystuje

enzym (polimeraz

ę

DNA), który jest katalizatorem syntezy pojedynczego ła

ń

cucha

DNA. Polega ona na rozpleceniu podwójnego ła

ń

cucha (etap denaturacji). Etap

anilingu: hybrydyzacja primera komplementarnego do ko

ń

ca 5’ pojedynczego

ła

ń

cucha DNA. Kolejny etap: polimeryzacja – do ko

ń

ca 3’ primera zostanie

dobudowana komplementarna ni

ć

DNA. W efekcie tych trzech etapów powstanie

dwuniciowa helisa. Poszczególne etapy zwi

ą

zane s

ą

ze zmian

ą

temperatury,

dlatego w reakcji PCR wykorzystywana jest polimeraza odporna na wysok

ą

temperatur

ę

.

Jednokrotna reakcja podwaja liczb

ę

kopii. Wielokrotne zastosowanie reakcji PCR

powoduje ekspotencjalny przyrost liczby kopii. Bł

ę

dy w procesie powielania

wyst

ę

puj

ą

bardzo rzadko, mniej wi

ę

cej raz na 10 miliardów zreplikowanych zasad.

1.2 Sekwencjonowanie

Metoda ta, wynaleziona przez naukowców ameryka

ń

skich i brytyjskich w roku 1977,

polega na podziale cz

ą

steczki DNA na fragmenty a nast

ę

pnie na odczytaniu

sekwencji nukleotydów, z których składa si

ę

ta cz

ą

steczka.

Istnieje wiele metod sekwencjonowania. Przykładowe metody:

1. Elektroforeza DNA w

ż

elu agarozowym – fragmenty ła

ń

cuchów DNA

umieszczamy w 4 kieszonkach i poddajemy działaniu silnego pola
elektrycznego, na skutek czego fragmenty DNA migruj

ą

w

ż

elu w kierunku

elektrody dodatniej (DNA ma ładunek ujemny) z szybko

ś

ci

ą

zale

ż

n

ą

od ich

wielko

ś

ci i kształtu. Nast

ę

pnie odczytujemy sekwencj

ę

na podstawie

kolejno

ś

ci pr

ąż

ków. Metoda nie jest pozbawiona bł

ę

dów.

2. Sekwencjonowanie przez hybrydyzacj

ę

– wykorzystujemy mo

ż

liwo

ść

tworzenia helisy z pojedynczej nici. Chcemy odczyta

ć

sekwencj

ę

nukleotydów

background image

pojedynczej nici o długo

ś

ci n. Wprowadzamy j

ą

do roztworu wraz z pełn

ą

bibliotek

ą

oligonukleotydów o długo

ś

ci k (k<<n). Oligonukleotydy, które

wykrywamy na podstawie fluorescencji, przył

ą

czaj

ą

si

ę

do ła

ń

cucha. Po

przył

ą

czeniu mo

ż

emy na podstawie barwy przył

ą

czonych oligonukleotydów

odczyta

ć

szukan

ą

sekwencj

ę

ła

ń

cucha. Bibliotek

ę

nukleotydów mo

ż

na

stworzy

ć

na specjalnym chipie.

Bioinformatyka

(bioinformatics, biocomputing) zajmuje si

ę

symulacjami

komputerowymi w biochemii i biologii molekularnej, tworzeniem i zarz

ą

dzaniem

bazami danych, poszukiwaniem, wyci

ą

ganiem, analiz

ą

i interpretacj

ą

informacji z

biologicznych baz danych, tworzeniem nowych algorytmów i metod statystycznych
do analizy danych biologicznych oraz innymi technikami informatycznymi
zwi

ą

zanymi z naukami biologicznymi.

Informatyka DNA (DNA computing) okre

ś

lana równie

ż

jako informatyka

molekularna, jest now

ą

alternatyw

ą

dla równoległych systemów komputerowych. Jej

pocz

ą

tek si

ę

ga 1994 roku, kiedy to Leonard M. Adleman (współtwórca znanego

algorytmu szyfrowania asymetrycznego RSA) po raz pierwszy zademonstrował
mo

ż

liwo

ść

wykorzystania cz

ą

steczek molekularnych do rozwi

ą

zywania problemów

matematycznych. Z u

ż

yciem cz

ą

steczek DNA rozwi

ą

zał on siedmiowierzchołkowy

(14 dróg) problem poszukiwania

ś

cie

ż

ki Hamiltona.

Ś

cie

ż

ka Hamiltona jest

ś

cie

ż

k

ą

wychodz

ą

c

ą

z dowolnego, ustalonego wierzchołka

grafu i przechodz

ą

c

ą

przez wszystkie wierzchołki dokładnie jeden raz (przez

pojedyncz

ą

kraw

ę

d

ź

mo

ż

e przej

ść

wielokrotnie).

Ś

cie

ż

ka ko

ń

czy si

ę

w ustalonym

wierzchołku docelowym (w przypadku cyklu Hamiltona jest to ten sam wierzchołek,
w którym rozpocz

ę

to poszukiwanie).

Algorytm Leonarda Adlemana dla grafu o n wierzchołkach:

I)

Stwórz du

ż

y zbiór losowych

ś

cie

ż

ek, przechodz

ą

cych przez graf.

II)

Dla ka

ż

dej

ś

cie

ż

ki sprawd

ź

, czy:

a) zaczyna si

ę

w wierzchołku pocz

ą

tkowym i ko

ń

czy w docelowym, je

ż

eli

nie to usu

ń

j

ą

ze zbioru,

b) przechodzi dokładnie przez n wierzchołków, je

ż

eli nie to usu

ń

j

ą

ze

zbioru,

c) przechodzi dokładnie przez ka

ż

dy wierzchołek, je

ż

eli nie to usu

ń

j

ą

ze

zbioru.

I)

Je

ż

eli powstały zbiór zawiera elementy to istnieje szukana

ś

cie

ż

ka

Hamiltona, w przeciwnym razie (zbiór jest pusty)

ś

cie

ż

ka nie istnieje.

Problem ten zaliczamy do grupy problemów NP-zupełnych, których nie mo

ż

na

rozwi

ą

za

ć

w czasie wielomianowym. Adleman rozwi

ą

zał ten problem generuj

ą

c

wszystkie mo

ż

liwe kombinacje jako odr

ę

bne ła

ń

cuchy DNA. Dla siedmiu

wierzchołków rozwi

ą

zanie jest trywialne i mo

ż

na je szybko otrzyma

ć

, stosuj

ą

c

normalne komputery lub obliczaj

ą

c r

ę

cznie. Przykład ten ilustruje jednak potencjalne

mo

ż

liwo

ś

ci komputerów i informatyki DNA.

background image

Inne do

ś

wiadczenie przeprowadzone w Mount Sinai School of Medicine w Nowym

Yorku pokazuje mo

ż

liwo

ść

wykonywania operacji dodawania liczb binarnych

reprezentowanych przez ła

ń

cuchy DNA. Powstał równie

ż

komputer DNA, z którym

mo

ż

na zagra

ć

w gr

ę

„kółko i krzy

ż

yk”.

W 2000 w Princeton przedstawiono mo

ż

liwo

ść

zastosowania cz

ą

steczek RNA do

rozwi

ą

zywania problemów (problem skoczków szachowych na szachownicy o

wielko

ś

ci 3x3) oraz budowy komputerów molekularnych.

2. Komputer DNA

Komputer DNA (molekularny) jest to zbiór specjalnie wyselekcjonowanych
ła

ń

cuchów DNA, których kombinacja spowoduje rozwi

ą

zanie postawionego

problemu. Nadziej

ą

pokładan

ą

w komputerach DNA jest ich wysoki stopie

ń

równoległo

ś

ci, co potencjalnie powinno umo

ż

liwi

ć

rozwi

ą

zanie problemów

wymagaj

ą

cych wielu oblicze

ń

poprzez obliczenia równoległe.

W 1973 roku Charles Benett zaproponował model programowalnego komputera
molekularnego zdolnego do realizacji dowolnego algorytmu. W praktyce pierwsze
komputery powstały w 2001 roku. Autorami jednego z nich s

ą

naukowcy z Instytutu

Weizmanna w Rehovot, którzy wykorzystali w swoich do

ś

wiadczeniach cz

ą

steczki

DNA, które pełni

ą

zarówno rol

ę

„oprogramowania”, sygnału wej

ś

cia-wyj

ś

cia, jak

równie

ż

dostarczaj

ą

potrzebnej energii. W roku 2003 komputer ten został

udoskonalony i osi

ą

gał pr

ę

dko

ść

reakcji molekularnych 330 TFLOPS w obj

ę

to

ś

ci 5

mililitrów (mała ły

ż

eczka płynu). W komputerze tym rol

ę

sprz

ę

tu pełni

ą

enzymy

restrykcyjne, które rozpoznaj

ą

ś

ci

ś

le okre

ś

lone sekwencje DNA i w ich obr

ę

bie

przecinaj

ą

cz

ą

steczk

ę

.

Równie

ż

w Polsce trwaj

ą

badania nad stworzeniem komputera molekularnego. W

roku 2002 we Wrocławiu powstała tzw. Grupa Inicjatywna Konstrukcji Prototypu
Opartego na DNA.

2.1. Komputery DNA a komputery tradycyjne

Porównanie komputerów tradycyjnych i komputerów zbudowanych z cz

ą

steczek

DNA jest bardzo trudne i mo

ż

e doprowadzi

ć

w wielu sytuacjach do rozbie

ż

nych

wyników. Poni

ż

sze dane nale

ż

y zatem traktowa

ć

jedynie jako dane przybli

ż

one.

DNA jako no

ś

nik informacji – pojemno

ść

pami

ę

ci biologicznej jest znacznie wi

ę

ksza

ni

ż

stosowanych dzisiaj no

ś

ników. Małe rozmiary DNA sprawiaj

ą

,

ż

e w obj

ę

to

ś

ci 1

mm

3

mie

ś

ci si

ę

10 mld MB informacji – 10 PB (zakładaj

ą

c,

ż

e jedna para

nukleotydów stanowi jeden bit informacji – 0 lub 1). Jeden gram DNA zawiera 10

21

zasad DNA, co odpowiada 10

8

TB danych. Kilka gramów DNA mo

ż

e kodowa

ć

wszystkie informacje dost

ę

pne na ziemi.

DNA jako superkomputer. Zakładaj

ą

c,

ż

e przoduj

ą

ce komputery umo

ż

liwiaj

ą

działania z pr

ę

dko

ś

ci

ą

100 MIPS (milion instrukcji na sekund

ę

), ła

ń

cuchy DNA

działaj

ą

z pr

ę

dko

ś

ci

ą

ponad

10 razy szybsz

ą

.

Komputery DNA zapewniaj

ą

du

ż

y stopie

ń

równoległo

ś

ci przetwarzania. W jednej

kropli roztworu wodnego mo

ż

e znajdowa

ć

si

ę

ponad bilion molekularnych

procesorów, wykonuj

ą

cych miliard operacji na sekund

ę

.

background image

Komputery DNA nie potrzebuj

ą

zasilania elektrycznego i s

ą

wysoce

energooszcz

ę

dne.

Na podstawie tych informacji wida

ć

,

ż

e komputery DNA stanowi

ą

ciekaw

ą

alternatyw

ę

dla komputerów stacjonarnych.

2.2. Kodowanie DNA a kodowanie binarne

W przypadku kodowania binarnego operujemy dwoma bitami 0 i 1. W przypadku
kodowania DNA mamy mo

ż

liwo

ść

skorzystania z 4 nukleotydów A,T,G,C.

W zale

ż

no

ś

ci, ile znaków b

ę

dziemy chcieli zakodowa

ć

, taki długi b

ę

dzie ci

ą

g

nukleotydów przypadaj

ą

cy na ka

ż

dy znak. W przypadku, gdy chcemy zakodowa

ć

64

ż

ne znaki potrzebujemy ci

ą

gu składaj

ą

cego si

ę

z 3 nukleotydów.

Mo

ż

emy równie

ż

traktowa

ć

A i T jako 0 a G i C jako 1. Korzystaj

ą

c z alfabetu ASCII

znak A mo

ż

na zapisa

ć

jako 65

10

=1000001

2

=GTTATAC. Nie musimy tworzy

ć

specjalnego alfabetu. W tym przypadku nie wykorzystujemy czterech zasad do
kodowania tylko dwie.

Przy budowie alfabetu nale

ż

y stosowa

ć

metody charakterystyczne dla szyfrów

homofonicznych (najcz

ęś

ciej wyst

ę

puj

ą

ce litery kodowane s

ą

za pomoc

ą

kilku

czwórek). Zapobiega to sytuacji, w której charakterystyczny kawałek tekstu, mógłby
by

ć

traktowany przez kryptoanalityka jako nowy primer. Dzi

ę

ki temu mógłby on

otrzyma

ć

cz

ęść

szukanego tekstu. Inn

ą

mo

ż

liwo

ś

ci

ą

jest zastosowanie kompresji lub

innej metody do zmiany układu liter w tek

ś

cie jawnym przed jego zamian

ą

na ci

ą

g

nukleotydów. Metoda ta podobnie jak klucz nie mo

ż

e zosta

ć

ujawniona.

3. DNA a ochrona danych

Biotechnologia znajduje swoje zastosowanie równie

ż

w zagadnieniach zwi

ą

zanych z

ochron

ą

danych.

DNA mo

ż

e by

ć

wykorzystywane w:



kryptografii – stosowany algorytmy jednorazowy (one-time-pad) z
wykorzystaniem operacji podstawienia lub XOR,



steganografii – bezpieczne ukrycie wiadomo

ś

ci a nast

ę

pnie jej odtworzenie

dzi

ę

ki posiadanej wiedzy o kluczu,



tworzeniu molekularnej sumy kontrolnej z wykorzystaniem obrazów

ż

elowych,



jako odpowiednik skrótu (funkcji haszuj

ą

cej), wykorzystany do znakowania

przedmiotów,



systemach identyfikacji osób,



kryptoanalizie – do łamania konwencjonalnych algorytmów symetrycznych
(np.DES) oraz asymetrycznych.

background image

3.1. Kryptografia DNA

Algorytm jednorazowy (One-time-pad)

Tekst jawny jest szyfrowany przy u

ż

yciu cz

ą

steczek DNA za pomoc

ą

algorytmu

jednorazowego, który po spełnieniu trzech podstawowych warunków jest
algorytmem zapewniaj

ą

cym bezwzgl

ę

dne bezpiecze

ń

stwo. Trzy podstawowe

warunki, które musi spełnia

ć

ła

ń

cuch DNA stanowi

ą

cy klucz:



musi by

ć

przynajmniej tak długi jak szyfrowany tekst (przy du

ż

ym

upakowaniu danych w cz

ą

steczkach DNA nie stanowi to wi

ę

kszego

problemu),



musi by

ć

losowy,



mo

ż

e by

ć

u

ż

yty tylko jeden raz.

Zanim zaczniemy szyfrowanie za pomoc

ą

tej metody musimy stworzy

ć

długi ła

ń

cuch

DNA (klucz) zbudowany z losowo wybranych krótkich sekwencji oligonukleotydów.
Ten ła

ń

cuch stanowi podstaw

ę

naszej metody. B

ę

dzie u

ż

ywany jako tablica (klucz),

za pomoc

ą

, której b

ę

dziemy szyfrowa

ć

i deszyfrowa

ć

wiadomo

ś

ci. Musi by

ć

ona

znana przez obie komunikuj

ą

ce si

ę

strony (łatwo

ść

w wymianie stanowi tutaj

mikroskopijna wielko

ść

tego ła

ń

cucha) i nie mo

ż

e by

ć

ujawniona nikomu innemu.

Metoda podstawieniowa

Tekst wej

ś

ciowy stanowi

ą

cy ci

ą

g binarny o długo

ś

ci n dzielony jest na ci

ą

gi znaków

o ró

ż

nych długo

ś

ciach. Tablica podstawieniowa one-time-pad zbudowana jest w taki

sposób, aby wszystkie mo

ż

liwe ci

ą

gi wej

ś

ciowe zostały zamienione na ci

ą

gi znaków

zaszyfrowanych o ró

ż

nych długo

ś

ciach.

Szyfrowanie za pomoc

ą

metody podstawieniowej polega na zamianie ka

ż

dego ci

ą

gu

wej

ś

ciowego na podstawie tablicy podstawieniowej na tekst wyj

ś

ciowy

(zaszyfrowany). Deszyfrowanie jest operacj

ą

odwrotn

ą

.

Zastosowanie cz

ą

steczek DNA w algorytmie.

Tekst wej

ś

ciowy – probówka zawieraj

ą

ca krótkie odcinki DNA.

Tekst zaszyfrowany – probówka zawieraj

ą

ca inne krótkie odcinki DNA.

Szyfrowanie polega na losowej, lecz odwracalnej zamianie odcinków
reprezentuj

ą

cych tekst wej

ś

ciowy na odcinki DNA reprezentuj

ą

ce tekst

zaszyfrowany. Oryginalne cz

ą

steczki s

ą

usuwane.

Budowa tablicy podstawieniowej:

Tworzymy długi ła

ń

cuch DNA składaj

ą

cy si

ę

z wielu segmentów. Ka

ż

dy segment

składa si

ę

z dwóch cz

ęś

ci: ci

ą

gu znaków reprezentuj

ą

cych tekst jawny oraz ci

ą

gu

znaków reprezentuj

ą

cych odpowiadaj

ą

cy mu tekst zaszyfrowany.

background image

Reprezentacja ła

ń

cucha:

Długo

ść

ła

ń

cucha: n.

Ka

ż

dy segment to odcinek ograniczony z obu stron stoperem. Ła

ń

cuch składa si

ę

z

d = n / (L1+L2+L3) powtarzaj

ą

cych si

ę

segmentów.

B

i

– ci

ą

g o długo

ś

ci L1=c

1

log n, reprezentuj

ą

cy tekst zaszyfrowany.

C

i

– ci

ą

g o długo

ś

ci L2=c

2

log n, reprezentuj

ą

cy tekst jawny.

Ka

ż

dy segment unikalnie odwzorowuje ci

ą

g tekstu jawnego na ci

ą

g zaszyfrowany.

STOP – primer - ci

ą

g nukleotydów o długo

ś

ci L3=c

3

.

Chc

ą

c wygenerowa

ć

sekwencj

ę

nukleotydów, odpowiadaj

ą

cych tekstowi

zaszyfrowanemu na podstawie tej tablicy, jako primera u

ż

ywamy ~B

i

. Na jego

podstawie okre

ś

lamy ci

ą

g odpowiadaj

ą

cy tekstowi jawnemu C

i

(reakcja PCR).

Stoper zapobiega dalszemu rozszerzaniu si

ę

reakcji ponad interesuj

ą

cy nas ci

ą

g

jawny.

3.2 Steganografia DNA

Ludzie ju

ż

od czasów staro

ż

ytnych posiadali tajemnice, które chcieli ukry

ć

przed

innymi. W wielu przypadkach uciekali si

ę

do metod, które powodowały,

ż

e tekst był

niewidoczny dla innych. Przykładem mo

ż

e by

ć

tutaj atrament sympatyczny, u

ż

ywany

przez szpiegów czy te

ż

miniaturowe zdj

ę

cia wklejane do dokumentów jako kropki

ko

ń

cz

ą

ce zdania. Taki sposób ukrywania tekstu nazywamy steganografi

ą

.

Prezentowany algorytm wykorzystuje w tym przypadku cz

ą

steczki DNA.

Metoda I

Ukrywanie informacji

1. Tworzymy alfabet reprezentuj

ą

cy znaki za pomoc

ą

ci

ą

gów nukleotydów o

długo

ś

ci 4.

2. Tekst jawny kodujemy przy pomocy stworzonego alfabetu.

3. Tworzymy klucz, który musi pozosta

ć

tajny.

4.

Klucz kodujemy według tego samego alfabetu, którego u

ż

yli

ś

my do

kodowania tekstu jawnego. Klucz stanowi starter (primer), który umo

ż

liwia

znalezienie tekstu w

ś

ród innych cz

ą

steczek DNA poprzez zastosowanie

reakcji PCR. Wa

ż

ne jest, aby po zamianie na ci

ą

g nukleotydów, miał on

długo

ść

minimum 20 nukleotydów, aby z du

ż

ym prawdopodobie

ń

stwem

w

ś

ród innych cz

ą

steczek nie było wi

ę

cej takich ci

ą

gów. Kryptoanalityk musi

background image

sprawdzi

ć

4

20

(2

40

) mo

ż

liwych primerów, aby odnale

źć

wiadomo

ść

. Nie jest to

a

ż

tak du

ż

o, wi

ę

c najlepiej aby ci

ą

g reprezentuj

ą

cy klucz składał si

ę

z ponad

35 nukleotydów. Przyjmuj

ą

c 4 nukleotydy na jeden znak, klucz powinien mie

ć

około 9 znaków.

5.

Budujemy ni

ć

klucz_komplementarny-tekst-klucz_komplementarny oraz drug

ą

ni

ć

, któr

ą

stanowi klucz.

Przykładowe metody tworzenia pojedynczych nici DNA:

synteza na podło

ż

u stałym,

metoda fotolitograficzna.

5. Wykonujemy reakcj

ę

PCR, na skutek czego otrzymujemy dwuniciow

ą

cz

ą

steczk

ę

DNA.

6. Stworzon

ą

cz

ą

steczk

ę

umieszczamy w

ś

ród wielu innych cz

ą

steczek o

podobnej budowie.

Druga strona musi zna

ć

alfabet, którego u

ż

yto do kodowania oraz klucz (primer).

Trudno

ść

odnalezienia tekstu polega na przejrzeniu ogromnej ilo

ś

ci cz

ą

steczek

DNA. Odnalezienie wła

ś

ciwej cz

ą

steczki w tym przypadku jest równoznaczne ze

złamaniem tej metody i odnalezieniem szukanego tekstu jawnego.

Odczytywanie ukrytej informacji

1. Chc

ą

c znale

źć

wła

ś

ciw

ą

cz

ą

steczk

ę

DNA nale

ż

y wykona

ć

reakcj

ę

PCR,

u

ż

ywaj

ą

c ła

ń

cucha nukleotydów reprezentuj

ą

cego klucz jako primera.

Reakcj

ę

PCR nale

ż

y przeprowadzi

ć

wielokrotnie, w celu zwielokrotnienia

liczby cz

ą

steczek zawieraj

ą

cych ukryty tekst.

2. Po otrzymaniu pojedynczej nici z cz

ą

steczki zawieraj

ą

cej ukryty tekst,

odczytujemy ci

ą

g nukleotydów (sekwencjonowanie).

3. Zamieniamy ci

ą

g nukleotydów na poszukiwany tekst przy pomocy alfabetu,

na podstawie którego kodowali

ś

my tekst jawny w fazie ukrywania informacji.

Najlepiej wyja

ś

ni

ć

t

ą

metod

ę

na przykładzie.

Chcemy ukry

ć

tekst jawny IT. Po zamianie tekstu na ci

ą

g nukleotydów, otrzymujemy

nast

ę

puj

ą

cy ci

ą

g: TATAGTCC.

Tworzymy hasło H2 (ze wzgl

ę

du na czytelno

ść

przykładu hasło składa si

ę

tylko z

dwóch znaków, natomiast w praktyce powinno by

ć

dłu

ż

sze). Po zamianie na ci

ą

g

nukleotydów ma ono posta

ć

: TTACACCA.

Nast

ę

pnie tworzymy nast

ę

puj

ą

ce nici:

AATGTGGT TATAGTCC AATGTGGT,

TTACACCA.

Z wykorzystaniem enzymu polimerazy tworzymy podwójn

ą

helis

ę

DNA. Cz

ą

steczk

ę

t

ę

umieszczamy w probówce z okre

ś

lon

ą

substancj

ą

.

background image

Odbiorca musi równie

ż

dokona

ć

zamiany hasła na ci

ą

g nukleotydów. Nast

ę

pnie po

otrzymaniu probówki wielokrotnie wykonuje reakcj

ę

PCR, jako primer stosuj

ą

c ci

ą

g

nukleotydów reprezentuj

ą

cych hasło.

Rysunek 1. Działanie reakcji PCR.

W wyniku reakcji PCR liczba cz

ą

steczek DNA zawieraj

ą

cych ukryty tekst zostaje

zwielokrotniona. W kolejnym kroku odbiorca wykonuje sekwencjonowanie i
otrzymuje ci

ą

g TATAGTCC. Znaj

ą

c alfabet zamienia go na tekst IT. Bezpiecze

ń

stwo

tej metody oparte jest na tajno

ś

ci klucza.

Najtrudniejsz

ą

i najdro

ż

sz

ą

reakcj

ą

z punktu widzenia biologii jest tworzenie długich

nici o okre

ś

lonej sekwencji nukleotydów.

Metoda II

Inne podej

ś

cie podobne jest do kryptografii wizualnej. Tekstu nie zamieniamy teraz

według specjalnego alfabetu, lecz pewne odcinki DNA lub pojedyncze nukleotydy s

ą

w tym przypadku odpowiednikami zer i jedynek. Równie

ż

w tym przypadku

cz

ą

steczk

ę

, któr

ą

chcemy ukry

ć

umieszczamy w

ś

ród wielu innych cz

ą

steczek.

Wszystkie cz

ą

steczki maj

ą

jednak podobn

ą

budow

ę

. Na pocz

ą

tku i ko

ń

cu znajduje

si

ę

primer – ten sam dla wszystkich cz

ą

steczek. W poprzedniej metodzie primer

u

ż

ywany był jako klucz potrzebny do deszyfrowania wiadomo

ś

ci. W tym przypadku

nie odgrywa on takiej roli. Jest on potrzebny, aby umo

ż

liwi

ć

wykonanie w

ź

niejszym etapie reakcji PCR. To wła

ś

nie pola pomi

ę

dzy primerami w fikcyjnych

ła

ń

cuchach s

ą

u

ż

ywane zarówno do szyfrowania jak i deszyfrowania wła

ś

ciwego

tekstu. Wykonuj

ą

c elektroferez

ę

ż

elu otrzymujemy dla ka

ż

dej cz

ą

steczki oddzielne

obrazy dla 0 i 1.

Ukrywanie wiadomo

ś

ci

Nadawca tworzy cz

ą

steczk

ę

DNA z tekstem jawnym oraz primerem na jego

pocz

ą

tku i ko

ń

cu. Nast

ę

pnie preparuje inne cz

ą

steczki, które maj

ą

podobn

ą

budow

ę

(długo

ść

, primery). Na podstawie obrazu

ż

elowego tych cz

ą

steczek (a) budowana

jest cz

ą

steczka X (b) stanowi

ą

ca zaszyfrowany tekst. Cz

ą

steczka X powstaje przez

zmieszanie cz

ą

steczek A,B,C. Nast

ę

pnie nadawca tworzy cz

ą

steczk

ę

Y (b), która

powstaje przez zmieszanie cz

ą

steczek B i C. Stanowi ona klucz potrzebny do

odczytania zaszyfrowanego tekstu. Nadawca musi przekaza

ć

odbiorcy t

ą

cz

ą

steczk

ę

lub jej obraz

ż

elowy.

background image

Odkrywanie wiadomo

ś

ci

Za pomoc

ą

elektroforezy

ż

elu otrzymujemy obraz

ż

elowy cz

ą

steczek X oraz Y.

Nast

ę

pnie odejmujemy od siebie obrazy X i Y, aby otrzyma

ć

wiadomo

ść

cz

ą

steczk

ę

A (c).

Ta metoda mo

ż

e by

ć

równie

ż

ł

ą

czona z innymi metodami jak np. wcze

ś

niej

omówion

ą

metod

ą

steganografii. Cz

ą

steczki ze wspólnym primerem, potrzebne do

odszyfrowania wiadomo

ś

ci mog

ą

by

ć

umieszczane w

ś

ród wielu innych cz

ą

steczek o

innej budowie. Primer musi stanowi

ć

wtedy tajemnic

ę

.

Przykładowe obrazy

ż

elowe (odczytujemy od dołu do góry):

M - molekularny znacznik wagowy.

Na obrazie

ż

elowym a) mamy przedstawione 3 cz

ą

steczki reprezentuj

ą

ce 9-bitowe

liczby.

1 i 2 = 100000110

2

= 26210 - ten ci

ą

g chcemy ukry

ć

3 i 4 = 001100001

2

= 9710

6 i 7 = 101001001

2

= 32910

Obraz

ż

elowy b przedstawia cz

ą

steczki X (zmieszane A,B i C) i Y (cz

ą

steczki B i C).

Obraz c) prezentuje cz

ą

steczk

ę

A, któr

ą

otrzymali

ś

my przez odj

ę

cie Y od X.

Stworzony został równie

ż

, jak na razie czysto teoretyczny model algorytmu

szyfrowania asymetrycznego z wykorzystaniem DNA.

background image

3.3 Skrót z u

ż

yciem DNA

Wszystkie numery seryjne sprz

ę

tu, płyt muzycznych, płyt z oprogramowaniem

mo

ż

na by kodowa

ć

w postaci cz

ą

steczek DNA a nast

ę

pnie doł

ą

cza

ć

do przedmiotu,

którego numer ten dotyczy. Wtedy numer seryjny stałby si

ę

cz

ęś

ci

ą

fizyczn

ą

sprz

ę

tu

i płyt. Takie oznaczenia zastosowano na szerok

ą

skal

ę

na olimpiadzie w Sydney.

Wszystkie towary zwi

ą

zane z olimpiad

ą

: koszulki, czapeczki a nawet kubki do kawy

zostały oznaczone specjalnym atramentem, zawieraj

ą

cym DNA australijskiego

sportowca. Do sprawdzenia autentyczno

ś

ci przedmiotów słu

ż

ył skaner r

ę

czny. W ten

sposób oznaczono ponad 50 milionów przedmiotów. Koszt oznaczenia jednego
przedmiotu wyniósł 5 centów.

3.4 Identyfikacja z u

ż

yciem DNA

Cz

ą

steczki DNA wykorzystywane s

ą

do identyfikacji ludzi, szczególnie w

kryminalistyce. Fakt,

ż

e ka

ż

dy człowiek ma unikalny kod DNA odkrył w 1985 roku

Alec Jeffreys. Ju

ż

rok pó

ź

niej test DNA pozwolił skaza

ć

pierwszych przest

ę

pców. W

Polsce identyfikacj

ę

genetyczn

ą

ś

ladów zastosowano na pocz

ą

tku lat 90. m.in. w

sprawie zabójstwa taksówkarza w Katowicach w 1994 roku. W przypadku bada

ń

zwi

ą

zanych z popełnieniem przest

ę

pstwa wykorzystuje si

ę

introny, czyli tzw.

niekoduj

ą

ce fragmenty ła

ń

cucha DNA. Nie zawieraj

ą

one informacji o cechach

człowieka a jednocze

ś

nie umo

ż

liwiaj

ą

porównanie dwóch fragmentów DNA i

stwierdzenie z du

ż

ym prawdopodobie

ń

stwem czy pochodz

ą

od tej samej osoby.

Wystarczy porówna

ć

próbk

ę

pobran

ą

z miejsca przest

ę

pstwa z t

ą

uzyskan

ą

od

oskar

ż

onego. Przykładowa metoda to analiza VNTR (Variable Number of Tandem

Repeats) polegaj

ą

ca na wyszukaniu w ła

ń

cuchu DNA szeregu identycznych

sekwencji (np.CACACA) i zliczaniu ich długo

ś

ci (ilo

ś

ci powtórze

ń

par). Liczba takich

powtórze

ń

jest ró

ż

na i charakterystyczna dla danej osoby. Inne zastosowanie tych

metod to testy w sprawach o ustalenie ojcostwa oraz badania medyczne (schorzenia
genetyczne). Podobne metody mogłyby by

ć

równie

ż

wykorzystywane jako

biometryczne metody uwierzytelniania u

ż

ytkowników w systemach. Istnieje taka

mo

ż

liwo

ść

, lecz w porównaniu z identyfikacj

ą

na podstawie obrazu t

ę

czówki wydaje

si

ę

by

ć

dro

ż

sza, trudniejsza w implementacji i zarz

ą

dzaniu oraz wykazuje wi

ę

ksze

prawdopodobie

ń

stwo bł

ę

du identyfikacji.

3.5 Kryptoanaliza algorytmów z wykorzystaniem cz

ą

steczek DNA

Interesuj

ą

ca jest równie

ż

mo

ż

liwo

ść

wykorzystania komputerów molekularnych w

kryptoanalizie, dzi

ę

ki ich wysokiemu stopniu zrównoleglenia. Leonard M. Adleman

pokazał,

ż

e komputer DNA o wielko

ś

ci kilku probówek umo

ż

liwia odnalezienie klucza

o długo

ś

ci 2

56

(metoda przeszukiwania wyczerpuj

ą

cego, atak brutalny) algorytmu

DES. Rozwi

ą

zanie to nie jest jednak pozbawione wad. Problem w tym przypadku

stanowi implementacja algorytmu w biochemii oraz dokładno

ść

wykonywania

oblicze

ń

z wykorzystaniem cz

ą

steczek DNA. Nale

ż

y równie

ż

pami

ę

ta

ć

,

ż

e

komputery molekularne mog

ą

jedynie przyspieszy

ć

rozwi

ą

zywanie problemów,

poprzez wysoki stopie

ń

równoległo

ś

ci. Dla dłu

ż

szych kluczy równie

ż

komputery

molekularne nie umo

ż

liwiaj

ą

odnalezienia klucza. Przykładowo Beaver zgodnie z

podej

ś

ciem Adlemana (atak brutalny) oszacował,

ż

e komputer potrzebny do

faktoryzacji 1000-bitowej liczby miałby pojemno

ść

10

200000

litrów.

background image

Literatura

[1]

Stryer Lubert, Biochemia. PWN, Warszawa 1999

[2]

Stepkiewicz O., Flohr M., Spirala bitów i bajtów CHIP, Grudzie

ń

2000

[3]

Adleman Leonard, Computing with DNA, 1998,

http://www.usc.edu/dept/molecular-science/fp-sciam98.pdf

[4]

Adleman Leonard, Molecular Computations Of Solutions To Combinatorial
Problems.
,

http://www.usc.edu/dept/molecular-science/fp-sci94.pdf

[5]

Adleman Leonard, Rothemund Paul W. K., Roweis Sam , Winfree Erik, On
Applying Molecular Computation To The Data Encryption Standard
., 1999,

http://www.usc.edu/dept/molecular-science/fp-des96.pdf

[6]

Unold Olgierd, Wrocławski komputer molekularny,

http://pryzmat.pwr.wroc.pl/Pryzmat_170/170dna.html

[7]

Richter Ch., Leier A., Banzhaf W., Rauhe H., Private and Public Key DNA
steganography
,

http://ls11

- www.cs.uni

- dortmund.de/people/banzhaf/PubKey.pdf

[8]

Gaurav Gupta, Nipun Mehra & Shumpa Chakraverty, DNA Computing, 2001,

http://www.theindianprogrammer.com/technology/dna_computing.htm


Wyszukiwarka

Podobne podstrony:
Kryptografia molekularna
w4 orbitale molekularne hybrydyzacja
kryptologia w bankowości (power point)
Biologia molekularna
W03b Komórkowe i molekularne podłoże zapaleń
Wprowadzenie do Kryptografii
kryptografia
Biologia molekularna koniugacja
genetyka molekularna
elementy genetyki molekularnej biologia 2
Przenikanie firewalli w tunelach kryptograficznych
Met. izol. oczysz.DNA dla studentów, Biologia molekularna
molekuły, egzamin - stare pytania
gielda-3, B.molekularna
seminaria biol mol onkogeneza, Płyta farmacja Poznań, III rok, Biologia molekularna, 2009, sem 6

więcej podobnych podstron