Istnieją oczywiście w Internecie serwisy komercyjne, dostępne za odpłatnością. Są to na ogół wyspecjalizowane, fachowe bazy danych, np. o tematyce biznesowej, prawniczej, medycznej, czy też serwisy agencji prasowych. Funkcjonują one przeważnie na zasadzie abonamentowej: najpierw opłacamy subskrypcję danego serwisu na pewien okres, po czym uzyskujemy swój identyfikator i hasło, umożliwiające skorzystanie z systemu. Jest to rozwiązanie dobre dla osób stale korzystających z danej usługi, jednak zupełnie nieprzydatne dla użytku doraźnego: czy ktoś będzie np. wykupywał subskrypcję bazy prawniczej po to, aby sprawdzić jakiś jeden potrzebny mu w danej chwili przepis? Czy ktoś będzie wykupywał konto w systemie pozwalającym przesyłać faksy za pośrednictwem e-maila, gdy wyjątkowo potrzebuje wysłać faks, a zwykle tego środka łączności nie używa? W "niewirtualnej" rzeczywistości, aby raz przejechać się autobusem, nie muszę kupować biletu miesięcznego; aby zapoznać się z nieznaną mi gazetą, nie muszę jej od razu prenumerować. W Internecie jednak raczej nie spotyka się serwisów, które pozwalałyby doraźnie, jednorazowo pobierać opłaty za konkretny dokument "ściągnięty" z serwera (tzw. mikropłatności - np. 10 centów za każde hasło z udostępnionej w Internecie encyklopedii).
Na przeszkodzie temu stają oczywiste względy techniczne. W założeniach protokołów TCP/IP w ewidentny sposób tkwi brak jakichkolwiek mechanizmów rozliczania użytkowników (mechanizmy takie będzie miał nowy protokół IPv6), a usługi informacyjne, takie jak np. WWW, są dostępne praktycznie anonimowo. Dokument umieszczony na serwerze może być przeczytany przez dowolną osobę na świecie posiadającą dostęp do komputera podłączonego do sieci; serwer nawet "nie wie", kto odczytuje z niego dokument (jeżeli pominąć "administracyjne" metody kontroli dostępu typu rejestracja użytkowników, hasła itp.) - tym bardziej nie może być mowy o jakichkolwiek opłatach (kogo i jak nimi obciążyć?).
Dla porównania, sytuacja jest znacznie łatwiejsza w popularnych zwłaszcza w USA komercyjnych serwisach on-line (np. Compuserve, America OnLine). Tam bowiem rejestrowana i rozliczana jest każda minuta pracy użytkownika, od zalogowania się na serwer do zakończenia sesji, a koszty wszelkich dodatkowych usług doliczane są po prostu do miesięcznego rachunku za korzystanie z systemu. Dlatego też często serwisy te oferują swoim użytkownikom dostęp do komercyjnych informacji i usług, których nie ma w Internecie. Internet bowiem - jako się rzekło - nie posiada wygodnego i ogólnie przyjętego sposobu pobierania opłat za skorzystanie z konkretnych usług czy dokumentów.
Powyżej napisałem wiele na temat sprzedaży informacji - bo Internet to przede wszystkim informacja - ale sieć stała się wszak już także "miejscem" sprzedaży przedmiotów materialnych. "Internetowe sklepy", w których można sobie wybrać i zamówić towar, dostarczany następnie pocztą, zadomowiły się już w Sieci na dobre i stały się chlebem powszednim jej użytkowników. Rzecz jasna podstawowym warunkiem prowadzenia tego typu działalności jest możliwość otrzymania przez firmę należności za sprzedany towar. Zrodziła się zatem pilna potrzeba opracowania metod płatności za rozmaite "sieciowe zakupy".
Z metodami "naiwnymi" możemy mieć także do czynienia w przypadku opłacania subskrypcji w omawianych powyżej płatnych serwisach Internetowych. W takich przypadkach transakcja może się odbywać nawet całkowicie poza siecią: trzeba po prostu udać się do siedziby firmy oferującej interesujący nas serwis, podpisać stosowną umowę (no, ostatecznie można tu posłużyć się faksem...) i zapłacić. Dopiero potem jest miejsce na wykorzystanie Internetu...
Metody te nie różnią się w zasadzie niczym od stosowanych w innej działalności handlowej; nie wnoszą ze sobą żadnych elementów, które byłyby charakterystyczne dla Internetu. Występują przeważnie na początkowych etapach rozwoju sieciowej komercji: tak dzieje się np. obecnie w naszym kraju, gdzie - z uwagi na wiadome słabości polskiego systemu bankowego - metody "naiwne" wykorzystywane są przez większość firm umożliwiających zakupy przez sieć. Ich oczywistą niedogodnością jest konieczność sfinalizowania transakcji środkami pozasieciowymi, co rzecz jasna w znacznym stopniu niweluje szybkość i wygodę wynikającą z posługiwania się Internetem. Mogą więc być traktowane jedynie jako prowizoryczne i konieczne jest szukanie innych środków, pozwalających na realizowanie transakcji całkowicie w sieci.
Procedura tego typu transakcji jest zaskakująco prosta, wydaje się nawet, że aż za prosta: aby dokonać zapłaty, należy po prostu podać sprzedawcy tajny szesnastocyfrowy numer swojej karty, oraz kilka innych danych, jak np. swoje nazwisko oraz datę ważności karty (każda karta kredytowa ma ustalony okres ważności - z reguły jest to rok, po czym jej posiadaczowi wydawana jest następna karta), a bank już sam obciąży należnością nasze konto. Każda taka transakcja jest na bieżąco autoryzowana (to znaczy sprzedawca sprawdza za pomocą specjalnego terminala w bankowej bazie danych, czy taka karta faktycznie istnieje i czy np. nie została skradziona), a ponieważ numer karty jest tajny, domniemywa się, że osoba, która podała sprzedawcy prawidłowy numer, jest rzeczywistym posiadaczem danej karty (numer konstruowany jest według specjalnego algorytmu, tak że jest bardzo mało prawdopodobne, aby zupełnie przypadkowy układ 16 cyfr odpowiadał jakiemuś prawdziwemu numerowi karty). Oczywiście nie wyklucza to oszustw (o czym będzie jeszcze mowa dalej), ale statystycznie stanowią one bardzo niewielki procent wszystkich transakcji. (Osobom chcącym się dowiedzieć więcej na temat zasad funkcjonowania kart kredytowych warto polecić obszerny zbiór materiałów informacyjnych na ten temat, dostępny pod adresem http://www.sebmal.priv.pl/ - strony te zostały również zamieszczone na CD-ROM-ie do tegorocznego wrześniowego numeru MI).
Karty kredytowe wydają się być dużo lepiej dopasowane do natury Internetu niż inne tradycyjne formy płatności. Uznane systemy kart kredytowych, takie jak VISA czy MasterCard, mają - podobnie jak Internet - zasięg globalny: posiadacz takiej karty wydanej przez dowolny bank na świecie może zapłacić nią w dowolnej (oczywiście należącej do systemu) firmie, w dowolnym kraju, w dowolnej walucie: odpadają wszelkie problemy związane z wymianą walut i trudnościami międzynarodowych przekazów pieniężnych. Jeszcze ważniejsza wydaje się być omówiona już powyżej możliwość płacenia kartą "na odległość". Połączenie tych dwu cech sprawia, że karty kredytowe są bardzo wygodnym sposobem płacenia w Internecie - użytkownik sieci posiadający kartę kredytową może dokonać całej transakcji praktycznie nie wstając od swojego komputera. Karty kredytowe stanowiły zatem niemal gotowe rozwiązanie dla płatności Internetowych; zostały też do tego celu szybko wykorzystane i do dziś zdecydowana większość sieciowych "sklepów" używa kart kredytowych.
Wygląda to mniej więcej w taki sposób, że po zapoznaniu się z zawartością danej witryny WWW i wybraniu interesujących nas towarów bądź usług, serwer WWW wyświetla na ekranie formularz, w którego pola - wśród innych niezbędnych informacji (np. adresu, na który ma być wysłany zamówiony towar...) - musimy wpisać wspomniane dane karty kredytowej. Akceptując formularz przesyłamy te dane do sprzedawcy i transakcja zostaje zawarta.
Zupełnie inna sytuacja ma natomiast miejsce przy płaceniu za informację: informacja ta jest transmitowana przez Internet do naszego komputera - zwykle od razu po dokonaniu autoryzacji karty kredytowej przez serwer sprzedawcy - niezależnie od tego, czyjego numeru karty użyjemy. Właściciel karty może oczywiście później reklamować transakcję, ale niezależnie od uznania czy nieuznania tej reklamacji oszustwo już miało miejsce i ktoś na tym stracił: albo on sam (jeżeli reklamacja nie zostanie uznana), albo jego bank względnie sprzedawca (w przypadku uznania reklamacji).
Oszust może "zbierać" numery kart kredytowych podglądając je w sklepach, jednak dużo efektywniejszą metodą jest przechwytywanie ich z samego Internetu. Aczkolwiek - jak o tym pisałem w artykule o szyfrowaniu w numerze 7-8/97 MI - niebezpieczeństwa podsłuchu w Internecie nie należy demonizować, to jednak niewątpliwie ono istnieje, dlatego na wszelki wypadek numery kart kredytowych lepiej przekazywać przez sieć w postaci zaszyfrowanej.
Wspomniana powyżej niemożność zweryfikowania klienta przez sprzedawcę działa również w odwrotną stronę: także i klient nie może być pewny, że serwer, który pyta go o numer jego karty kredytowej, jest prawdziwym "sieciowym sklepem" uczciwego sprzedawcy, a nie fałszywym, "podstawionym" serwerem, umieszczonym przez kogoś w sieci specjalnie po to, aby... w łatwy sposób zbierać numery kart kredytowych!
Podsumowując zatem, przy transakcjach kartami kredytowymi w Internecie mamy do czynienia z trzema podstawowymi problemami:
W SSL stosowany jest algorytm RSA. Każdy serwer akceptujący "bezpieczne" połączenia WWW (adresy tego typu stron można poznać po tym, iż zaczynają się od przedrostka "https://" zamiast "http://") posiada swój klucz publiczny, który wysyła przeglądarce nawiązującej z nim połączenie. Przeglądarka generuje losowy klucz sesji dla szyfru RC2 lub RC4, i wysyła go do serwera zaszyfrowany otrzymanym kluczem publicznym. Od tego momentu cała dalsza wymiana informacji między serwerem i przeglądarką jest szyfrowana (przeglądarka Netscape sygnalizuje taką sytuację wyświetleniem niebieskiego obramowania powyżej oglądanej strony oraz rysunku klucza u dołu ekranu).
Zdecydowana większość sieciowych sklepów, w których używa się numeru karty kredytowej, korzysta aktualnie z SSL. Z reguły przeglądanie zawartości witryny i wybór towarów do zakupu odbywa się zwykłym (nieszyfrowanym) protokołem HTTP; dopiero końcowy formularz zamówienia, w którym trzeba wpisać dane karty kredytowej, przekazywany jest w sposób "bezpieczny". Warto zauważyć, że "bezpieczeństwo" to może być dosyć iluzoryczne w przypadku korzystania z powszechnie dostępnych w Internecie tzw. eksportowych wersji przeglądarek WWW, które używają 40-bitowego klucza sesji, nie dającego - jak o tym wspominałem w poprzednim artykule - praktycznie żadnej ochrony przed kimś chcącym ten szyfr złamać. Prawdziwe bezpieczeństwo zapewniają dopiero wersje przeglądarek przeznaczone na wewnętrzny rynek amerykański, używające klucza 128-bitowego; ich eksport z USA jest jednak nielegalny, stąd też nie są one publicznie udostępniane w Internecie. Lepsze jednak nawet słabe szyfrowanie niż jego zupełny brak; pod warunkiem oczywiście, że mamy świadomość jego słabości.
System SSL rozwiązuje także niejako "przy okazji" problem weryfikacji sprzedawcy. Serwer stosujący protokół SSL nie tylko bowiem musi posiadać swój klucz publiczny, ale na dodatek klucz ten musi być certyfikowany przez jeden ze znanych przeglądarce tzw. urzędów certyfikacyjnych (certification authorities, CA). Takie urzędy certyfikacyjne prowadzi kilka firm upoważnionych przez RSA Data Security Inc. - właściciela algorytmu. Firma chcąca wykorzystywać na swoim serwerze SSL zgłasza się do CA, który po dokładnym sprawdzeniu jej "tożsamości" generuje (rzecz jasna odpłatnie) specjalny certyfikat, podpisany swoim własnym kluczem prywatnym. Certyfikat ten firma musi zainstalować w serwerze, aby uaktywnić możliwość korzystania z SSL. Ponieważ przeglądarka posiada wbudowaną listę CA wraz z ich kluczami publicznymi (listę tę można zobaczyć np. używając w przeglądarce Netscape opcji About/Security/Site certificates), może zweryfikować poprawność certyfikatu, a tym samym fakt, że firma jest w istocie tym, za kogo się podaje (oczywiście zakładając, że mamy zaufanie do CA i jego klucza publicznego...). W przypadku, gdy serwer nie posiada certyfikatu lub certyfikat wystawiony jest przez nieznany programowi CA (np. dla serwera Apache możliwe jest samodzielne wygenerowanie sobie certyfikatu), przeglądarka ostrzeże nas o tym fakcie i zapyta, czy mimo to chcemy kontynuować połączenie (tak jest w przypadku Netscape'a; Internet Explorer odmawia w ogóle połączenia z takimi serwerami).
SSL teoretycznie umożliwia także wykupienie sobie - na analogicznych zasadach - prywatnego certyfikatu przez klienta i stosowanie go dla potwierdzenia swojej tożsamości, z oczywistych względów trudno jednak wyobrazić sobie nakłonienie użytkowników przeglądarek WWW do masowego wykupywania sobie certyfikatów; istniejące urzędy certyfikacyjne nie są zresztą przygotowane do wydawania ich na taką skalę. Ten sposób weryfikacji klientów nie jest więc stosowany; nadal zatem istnieje możliwość posłużenia się zdobytym w jakiś sposób numerem cudzej karty. Nie jest to naturalnie sytuacja pożądana, toteż prowadzone są intensywne prace nad rozwiązaniem tego problemu. W ich wyniku powstało kilka alternatywnych rozwiązań, omawianych poniżej.
Podobnie jak SSL, system SET również opierać się będzie na certyfikatach - w przeciwieństwie jednak do SSL, gdzie certyfikat jest "ogólnym" potwierdzeniem tożsamości serwera bądź użytkownika, certyfikaty stosowane w SET przeznaczone będą tylko i wyłącznie do celów transakcji kartami kredytowymi. Certyfikaty wystawiane będą w sposób automatyczny przez specjalne serwery, zarządzane przez firmy zajmujące się rozliczaniem kart kredytowych. Po połączeniu się z takim serwerem (oczywiście połączenie będzie szyfrowane, np. przez SSL) musimy podać dane naszej karty kredytowej oraz nasze dane osobowe, pozwalające na zweryfikowanie tożsamości (np. numer prawa jazdy, adres zamieszkania itp.). Po sprawdzeniu tych danych w naszym banku (czynność ta odbywa się poza Internetem, poprzez istniejące prywatne sieci międzybankowe służące do autoryzacji kart kredytowych) serwer przesyła do naszego komputera gotowy certyfikat, który zostaje zapamiętany na naszym dysku. Analogicznej procedury - dla uzyskania swojego certyfikatu - musi dopełnić również sprzedawca, który chce przyjmować płatności kartami w systemie SET. Po dopełnieniu tych wstępnych czynności, podczas każdej transakcji oprogramowanie sprzedawcy i klienta sprawdza nawzajem swoje certyfikaty, eliminując tym samym z obu stron przypadki oszustwa.
Jednak system SET - jako się rzekło - nie jest jeszcze ogólnie dostępny. Praktyczną popularność zyskują sobie za to dwa inne rozwiązania płatności przez Internet z wykorzystaniem kart kredytowych: CyberCash i First Virtual.
Jeżeli dokonaliśmy już "włożenia" kart do portfela, możemy przystąpić do pierwszej transakcji. Podczas zakupów na serwerze sprzedawcy stosującego CyberCash, po dokonaniu wyboru interesujących nas towarów zamiast formularza przeznaczonego do wpisania numeru karty kredytowej pojawia się przycisk "PAY" (zapłać). Kliknięcie na ten przycisk powoduje uruchomienie na serwerze - poprzez odpowiedni skrypt CGI - programu Cash Register i wysłanie do przeglądarki specjalnego pliku zawierającego informacje o transakcji (m.in. dane sprzedawcy wraz z potwierdzającym je certyfikatem). Przeglądarka rozpoznaje format pliku jako przypisany do programu Wallet i uruchamia go. Ten - po zweryfikowaniu certyfikatu sprzedawcy - wyświetla okienko zawierające informację o transakcji i prośbę o jej akceptację. Gdy zaakceptujemy transakcję, Wallet przesyła sprzedawcy w odpowiedzi nasz własny certyfikat oraz zaszyfrowany numer karty kredytowej. Oryginalnym elementem systemu CyberCash jest fakt, że serwer sprzedawcy nie może rozszyfrować numeru karty - jest on bowiem zaszyfrowany kluczem firmy CyberCash, a nie sprzedawcy. Serwer sprzedawcy jedynie podpisuje tę informację własnym elektronicznym podpisem i przesyła do serwera CyberCash. Dopiero ten rozkodowuje informację i w imieniu sprzedawcy dokonuje właściwej transakcji (ta ostatnia operacja odbywa się rzecz jasna poprzez zamknięte sieci autoryzacji kart kredytowych) - ma to być zabezpieczeniem przed nieuczciwością sprzedawców, którzy chcieliby wykorzystywać do własnych transakcji numery kart swoich klientów.
Warto nadmienić, że przeznaczony dla sprzedawców program Cash Register jest bardzo uniwersalny: umożliwia obsługę za pośrednictwem serwera CyberCash nie tylko transakcji dokonywanych z użyciem programu Wallet, ale także w sposób "tradycyjny", poprzez wpisanie w formularzu WWW numeru karty (oczywiście traci się wtedy możliwość zweryfikowania tożsamości klienta), jak również transakcji dokonywanych przez telefon czy faks (w tych przypadkach sprzedawca musi rzecz jasna wprowadzić dane ręcznie).
Najnowsze wersje oprogramowania CyberCash oferują więcej niż
tylko bezpieczny sposób płacenia za pomocą kart kredytowych: ambicją
firmy jest zrealizowanie kompletnego systemu pozwalającego na
realizację wszelkich typów płatności. Obok podstawowego sposobu
płatności w programie Wallet, jakim są karty kredytowe, dostępna jest
"elektroniczna gotówka" o nazwie CyberCoin (dokładniej opisana dalej), *
zaś obecnie CyberCash testuje na ograniczonej grupie klientów
elektroniczny odpowiednik czeku, pozwalający na płacenie bezpośrednio
ze swojego konta bankowego, bez potrzeby użycia dodatkowych
instrumentów takich jak karta kredytowa.
Wprawdzie oprogramowanie CyberCash używa szyfrów o długich kluczach (768-bitowy RSA i 56-bitowy DES), jednakże ze względu na to, iż program przeznaczony jest wyłącznie do szyfrowania danych finansowych, a nie dowolnych informacji, firma uzyskała zgodę rządu USA na nieograniczony eksport programu - jest on zatem dostępny bez przeszkód w Internecie. Zarówno programy dla kupujących, jak i dla sprzedawców są bezpłatne, nie ma także żadnych opłat (wyjąwszy normalne opłaty związane z kartami pobierane przez centra autoryzacyjne) za obsługę kart kredytowych za pomocą systemu (sprzedawcy płacą natomiast prowizję od transakcji dokonywanych przy użyciu "elektronicznej gotówki" CyberCoin).
Firma CyberCash chętnie udziela licencji innym firmom na rozpowszechnianie przez nie programu Wallet pod własną marką, stąd też oprogramowanie to jest bardzo szeroko rozpowszechnione wśród np. providerów Internetu, różnych instytucji finansowych, a także innych producentów oprogramowania. Firmowane przez siebie wersje oprogramowania CyberCash rozprowadza m.in. Compuserve oraz Checkfree (największa amerykańska firma zajmująca się usługami home-banking). Warianty systemu opracowanego przez CyberCash są także oferowane pod własnymi nazwami przez kilka banków (np. system obsługiwany przez narodowy bank Kanady - Securnat); wszystkie one są wzajemnie kompatybilne i możliwe jest zamienne płacenie za ich pomocą.
Ostatnio pojawił się także na rynku płatności Internetowych program o nazwie Microsoft Wallet, dołączony do czwartej wersji przeglądarki Internet Explorer. Nie jest to jednakże - co mogłaby sugerować nazwa - kolejna "firmowa" wersja produktu CyberCash, lecz program o wiele prostszy. Microsoft Wallet jest modułem rozszerzającym (plug-in) do przeglądarki WWW, zwalniającym użytkownika - na serwerach "sieciowych sklepów" współpracujących z tym programem - od każdorazowego wypełniania formularzy z numerami kart kredytowych. Dane te - wcześniej wprowadzone jednorazowo i przechowywane na dysku komputera - są przesyłane do serwera sprzedawcy automatycznie, przez dokonanie wybor z zapamiętanej w programie listy. Do zaszyfrowania danych wykorzystywany jest zapewniany przez przeglądarkę WWW protokół SSL (przyszłe wersje programu mają już obsługiwać standard SET). Istnieje jednak pewien element wspólny między Microsoft Wallet i oprogramowaniem CyberCash: CyberCash oferuje otóż użytkownikom programu Microsoftu dodatkowy moduł, pozwalający korzystać z możliwości płacenia "elektroniczną gotówką" CyberCoin, a w przyszłości zamierza także udostępnić możliwość korzystania z przygotowywanych "elektronicznych czeków". *
Ze względu na szerokie rozpowszechnienie, swoją uniwersalność (różne metody płatności) oraz zapowiadaną zgodność z protokołem SET CyberCash wydaje się być dobrym kandydatem na przyszły standard w zakresie Internetowych płatności. O tym, że firma poważnie myśli o swoim programie w tym kontekście, świadczy fakt, iż specyfikacja protokołu używanego przez CyberCash została przedstawiona IETF w postaci draftu Internetowego - otwarta została zatem droga prowadząca do ewentualnego dokumentu RFC na ten temat.
Na zupełnie innej zasadzie niż pokładający zaufanie w "silnej" kryptografii CyberCash opiera się system proponowany przez First Virtual Holdings Inc. (http://www.fv.com/). Podstawową ideą tego rozwiązania jest usunięcie wszystkich operacji wymagających podawania numeru karty kredytowej całkowicie poza obręb Internetu. Zamiast prawdziwego numeru karty posługujemy się specjalnym umownym numerem kodowym - Virtual PIN, który podajemy we wszystkich transakcjach realizowanych za pośrednictwem systemu. Prawdziwy numer karty kredytowej odpowiadający danemu Virtual PIN zna jedynie First Virtual, i nie jest on nigdy przesyłany poprzez Internet.
Sporą niedogodnością przy uzyskiwaniu Virtual PIN jest fakt, że w myśl przyjętej przez firmę zasady nieprzesyłania numerów kart kredytowych przez Internet, po wypełnieniu odpowiedniego formularza rejestracyjnego na stronie WWW trzeba dodatkowo podać najistotniejszą informację - numer karty - telefonicznie lub faksem (tak jakby telefonu czy faksu nie dało się podsłuchać...), co stanowi nie lada "zawalidrogę" w toku operacji wykonywanych przez sieć. Nie jest to zbyt zachęcające zwłaszcza dla użytkowników spoza USA (koszty połączeń międzynarodowych), dobrze przynajmniej, że trzeba to zrobić tylko raz...
Podobnie jak prawdziwy numer karty kredytowej, także i Virtual PIN ma charakter poufny i nie powinien być poznany przez osoby postronne. W przeciwieństwie jednakże do numeru karty, Virtual PIN sam w sobie jest w razie jego ewentualnego ujawnienia praktycznie bezużyteczny. Podstawowym elementem bezpieczeństwa systemu First Virtual jest bowiem konieczność potwierdzenia każdej transakcji przez posiadacza karty - analogicznie jak ma to miejsce przy bezpośrednim użyciu karty kredytowej w "fizycznym" sklepie. Potwierdzenia te dokonywane są w First Virtual zwykłą pocztą elektroniczną. Rejestrując swój Virtual PIN użytkownik musi określić adres e-mail, na który będą przychodziły wszelkie żądania potwierdzeń. Bez pozytywnej odpowiedzi na takie żądanie żadna płatność nie zostanie dokonana.
W sieciowych sklepach korzystających z First Virtual na ekranie zamiast formularza pytającego o numer karty kredytowej pojawia się pytanie o Virtual PIN (z uwagi na wspomnianą bezużyteczność podsłuchanego numeru, formularz ten może nawet nie być szyfrowany przez SSL). Oprogramowanie serwera sprzedawcy przesyła otrzymany Virtual PIN (po wstępnym zweryfikowaniu jego istnienia, co można zrobić nawet zwykłą komendą finger) wraz z własnym Virtual PIN sprzedawcy zwyczajnym e-mailem na adres First Virtual. Serwer First Virtual z kolei odszukuje w swojej bazie danych adres posiadacza owego numeru i wysyła mu list z żądaniem potwierdzenia transakcji. To właśnie jest kluczowy punkt koncepcji First Virtual: użycie cudzego numeru Virtual PIN spowoduje, że to prawowity właściciel owego numeru, a nie oszust, dostanie list z żądaniem potwierdzenia. Oszust nie będzie więc mógł nań odpowiedzieć; natomiast użytkownik, który ni stąd, ni zowąd otrzyma żądanie potwierdzenia transakcji, której nie dokonywał, może odpowiedzieć "fraud" (czyli "oszustwo"), co spowoduje natychmiastowe unieważnienie jego Virtual PIN (potem niestety trzeba przejść od początku procedurę rejestracji nowego...).
Jeżeli odpowiedź użytkownika była pozytywna, serwer First Virtual odszukuje w bazie danych prawdziwy numer jego karty kredytowej i rozpoczyna procedurę autoryzacji transakcji (oczywiście jak w poprzednich rozwiązaniach, poprzez specjalizowane sieci bankowe). Odpowiedź użytkownika wraz z odpowiedzią centrum autoryzacyjnego przesyłana jest z powrotem sprzedawcy (tu znowu adres ustalany jest na podstawie Virtual PIN sprzedawcy, a więc i z tej strony podszycie się osoby nieuprawnionej będzie bezskuteczne). Jeżeli obie odpowiedzi są pozytywne, sprzedawca przystępuje do wysyłki towaru, a firma First Virtual sama zajmie się przekazaniem należności na jego konto bankowe.
Tak wygląda sytuacja przy sprzedaży dóbr materialnych. W przypadku handlowania informacją rzecz ma się nieco inaczej, gdyż firma First Virtual zaleca sprzedawcom (aczkolwiek nie wymaga tego), aby informacja udostępniana była na zasadzie "wypróbuj przed zapłaceniem", podobnej jak w przypadku oprogramowania shareware. Po podaniu numeru Virtual PIN i sprawdzeniu przez sprzedawcę, że numer taki na pewno istnieje, możemy zatem od razu skopiować z serwera sprzedawcy żądaną informację. Jeżeli uznamy, że nie będzie ona dla nas użyteczna, wolno nam, w odpowiedzi na przychodzący następnie list z żądaniem potwierdzenia transakcji, odmówić zapłaty. Jest to swoista ciekawostka systemu First Virtual - oczywiście nie możemy korzystać z tej możliwości zbyt często, gdyż w tym przypadku zostaniemy uznani za nieuczciwych i nasz Virtual PIN zostanie unieważniony.
Największą chyba zaletą systemu First Virtual jest to, że jest on "obustronny" - umożliwia również łatwe otworzenie własnego sieciowego sklepu. O ile w omówionych dotychczas metodach prowadzenie sprzedaży w sieci dostępne było tylko dla "prawdziwych" firm, mających możliwość przyjmowania zapłaty kartami kredytowymi (podpisaną umowę z odpowiednim centrum autoryzacyjnym), o tyle w First Virtual wszelkie należności z kart kredytowych klientów pobierane są na rzecz First Virtual, a nie samych sprzedawców. Sprzedawca nie ma nic do czynienia z obsługą kart kredytowych: wystarczy tylko posiadanie konta w jakimkolwiek amerykańskim banku, na które First Virtual przelewa przysługujące sprzedawcy należności. Swój sieciowy sklep otworzyć więc może niemal każdy, aczkolwiek wspomniany wymóg posiadania konta w amerykańskim banku (wynikający z wykorzystywania przez First Virtual sieci Automated Clearinghouse, obsługującej elektroniczne przelewy między bankami w USA) w praktyce ogranicza grono sieciowych sprzedawców do mieszkańców USA.
Korzystanie z systemu First Virtual jest płatne: za używanie numeru Virtual PIN płaci się stałą opłatę roczną (aktualnie dla kupujących 2$, dla sprzedających 10$), sprzedawcy płacą także prowizję od każdej transakcji.
Dla takich właśnie zastosowań (choć nie tylko) holenderska firma DigiCash opracowała system "elektronicznej gotówki" o nazwie ecash (http://www.digicash.com/ecash/ecash-home.html). *** Ten bardzo interesujący system jest całkowicie odmienny od rozwiązań stosujących karty kredytowe i odwzorowuje sposób zapłaty realną gotówką w świecie fizycznym. Środkiem płatniczym są tu "cyfrowe banknoty", które podobnie jak prawdziwe posiadają określony nominał, niepowtarzalny numer seryjny (bardzo ważne!) oraz zabezpieczenie przed sfałszowaniem w postaci podpisu cyfrowego emitującego je banku (jak zwykle, także i tu stosowany jest "nieśmiertelny" algorytm RSA). Jednak w przeciwieństwie do papierowych banknotów, elektroniczne są "jednorazowego użytku" - banknot o danym numerze seryjnym może być użyty tylko raz, po czym zostaje unieważniony przez bank. Podyktowane jest to faktem, iż cyfrowe banknoty, przechowywane na dysku komputera użytkownika, można byłoby przecież łatwo skopiować i tym samym kilkakrotnie płacić tymi samymi pieniędzmi.
Centralnym punktem całego systemu ecash jest bank emitujący
elektroniczną walutę, w którym każdy użytkownik musi posiadać konto.
Obecnie ecash emitują trzy banki na świecie - Mark Twain w USA,
Merita w Finlandii (we współpracy z fińskim oddziałem EUnetu) oraz
australijski Advance Bank, a przygotowują się do takiego
przedsięwzięcia trzy kolejne - Deutsche Bank, Bank Austria i Den
norske Bank z Norwegii ****. Pierwszym zatem krokiem niezbędnym do tego,
aby móc korzystać z elektronicznej gotówki, jest założenie sobie
konta w takim banku i wpłacenie nań jakiejś sumy pieniędzy - wszystko
to, niestety, w jak najbardziej "tradycyjny" sposób. Następnie możemy
"ściągnąć" z serwera firmy DigiCash odpowiednie oprogramowanie
obsługujące system (dostępne w wersjach dla Windows, Macintosha oraz
kilkunastu najpopularniejszych wersji Unixa - dla tego ostatniego
zarówno w trybie tekstowym, jak i pod X-Window) + i przystąpić do
pierwszego połączenia z bankiem. Podczas tego połączenia program, po
zapytaniu nas o nasz numer konta oraz zabezpieczające go hasło,
generuje najpierw naszą indywidualną, unikalną parę kluczy -
prywatny, który będzie służył do podpisywania wszelkich komunikatów
kierowanych przez nasz program do banku, oraz publiczny, który służy
do weryfikacji tego podpisu. Ten ostatni zostaje przekazany bankowi,
bank zaś ze swej strony przekazuje naszemu programowi swoje klucze
publiczne, służące do potwierdzenia autentyczności komunikatów
przesyłanych przez bank oraz samych elektronicznych pieniędzy (kluczy
tych jest kilka, każdy stosowany do innego celu). Dopiero po
dokonaniu tej wymiany kluczy (autorzy oprogramowania ostrzegają, że
na wolnych komputerach może to trwać nawet do 10 minut) program
zaproponuje użytkownikowi podjęcie pieniędzy z konta.
Jako się rzekło, ecash jest elektronicznym odpowiednikiem gotówki. Nie da się więc płacić pieniędzmi znajdującymi się na koncie: trzeba wcześniej wypłacić pewną ich ilość i umieścić je w "elektronicznym portfelu" na naszym własnym twardym dysku. Dopiero stąd możliwa jest realizacja płatności. W tym celu program ecash powinien cały czas pracować "w tle" na naszym komputerze: "zaczepia" się on na porcie TCP o numerze 5654 i oczekuje na przychodzące z sieci żądania wypłaty lub wpłaty. Ma to miejsce najczęściej wówczas, gdy na jakiejś stronie WWW klikniemy na odnośnik do informacji, która jest odpłatna: wówczas serwer WWW uruchamia swój własny program ecash, który łączy się z naszym i przesyła doń żądanie zapłaty. Na ekranie pojawia się okienko z informacją o szczegółach transakcji (wysokość żądanej sumy oraz komu i za co płacimy) i prośbą o zgodę na dokonanie płatności. Zaakceptowanie transakcji (możliwe jest skonfigurowanie programu tak, aby bez przeszkadzania użytkownikowi automatycznie akceptował płatności na kwoty niższe od zadanej granicy) powoduje pobranie odpowiedniej ilości cyfrowych pieniędzy z naszego dysku i przekazanie ich do komputera sprzedawcy. Stamtąd wędrują one natychmiast do serwera banku, który sprawdza, czy banknot o takim numerze seryjnym nie był już użyty, po czym wpłacona kwota zostaje dopisana do konta sprzedawcy, zaś jego serwer WWW przesyła nam zakupiony przez nas dokument.
Wielką zaletą systemu ecash jest to, że jest on całkowicie symetryczny: umożliwia przekazywanie pieniędzy nie tylko od klienta do sklepu jako zapłaty za kupiony towar (choć to jest jego najczęstszym zastosowaniem), ale także między dowolnymi dwoma użytkownikami systemu, w dowolnej chwili i z dowolnego powodu: można po prostu przesłać komuś swoje pieniądze, podobnie jak można to zrobić z prawdziwą gotówką. Każdy użytkownik systemu ecash może również, jeżeli zechce, bez dodatkowych kosztów otworzyć swój własny sieciowy sklep - służące do tego celu oprogramowanie jest dostępne za darmo dla każdego posiadacza konta na równi z wersją "kliencką" (w istocie jest to to samo oprogramowanie, tylko "obudowane" kilkoma dodatkowymi skryptami CGI). Autorzy systemu podkreślają także aspekt ochrony prywatności użytkownika: w przeciwieństwie do wszelkich płatności kartami kredytowymi, przy których z natury rzeczy dane o każdej transakcji muszą być rejestrowane w dokumentach banku, ecash jest systemem całkowicie anonimowym, podobnie jak płacenie gotówką w sklepie. Zauważmy, że elektroniczny pieniądz podpisany jest tylko przez bank; nie zawiera żadnej informacji o użytkowniku, który nim płaci. Dzięki zastosowaniu specjalnej techniki kryptograficznej - tzw. ślepego podpisu - nawet bank podpisujący poszczególne banknoty nie "wie", co podpisuje, a więc nie może ustalić, w posiadaniu którego z użytkowników znajdują się banknoty o jakich numerach. W istocie, jednym z priorytetowych założeń przyjętych przy projektowaniu systemu było uniemożliwienie identyfikacji osoby płacącej elektroniczną gotówką (chyba, że ona sama się przedstawi).
Niestety, ecash ma również i wady. Bodaj najpoważniejszą z nich jest fakt, że podobnie jak w prawdziwej gotówce, także i w tej elektronicznej występują różne waluty. Mark Twain emituje ecash o nominałach wyrażonych w dolarach amerykańskich; Merita - w markach fińskich; planowany ecash Deutsche Bank będzie elektronicznym odpowiednikiem marki niemieckiej - i tak dalej. Te różne waluty są jak dotąd całkowicie między sobą niewymienialne; użytkownik ecash posiadający konto w Mark Twain nie ma żadnego sposobu na zapłacenie w sieciowym sklepie przyjmującym jedynie marki fińskie - chyba że założy sobie także konto w fińskim banku, i zainstaluje do jego obsługi drugi program, bo nawet oprogramowanie obsługujące poszczególne waluty ecash nie jest ze sobą kompatybilne! Być może w przyszłości banki będą wymieniać jedną elektroniczną walutę na inną, tak jak czynią to z papierowymi pieniędzmi; dotychczasowy rozwój systemu zdaje się jednak zapowiadać, że taka sytuacja nastąpi raczej nieprędko. Te problemy z różnymi walutami, zupełnie kuriozalne w zestawieniu z globalnym zasięgiem Internetu, wydają się być jakimś grubym niedopatrzeniem w koncepcji systemu ecash i mogą stać się czynnikiem, który przesądzi o jego popularności, a raczej jej braku...
Mniej kłopotliwy jest konkurencyjny system elektronicznej gotówki - wspomniany już wcześniej CyberCoin, zawarty w nowszych wersjach oprogramowania firmy CyberCash. Nie ma tu wymogu posiadania konta w konkretnym, określonym banku; cyfrową gotówkę mogą pobierać do swoich portfeli posiadacze kont w dowolnym banku w USA (niezbędne jest jednak dopełnienie pewnych formalności: należy przesłać firmie CyberCash na piśmie, zwykłą pocztą (!), odpowiednie oświadczenie, wraz z kserokopią dokumentu tożsamości oraz jednym nieważnym (przekreślonym) czekiem ze swojej książeczki czekowej). W braku takiego konta - bądź gdy nie możemy czekać na zakończenie wspomnianych formalności - możliwe jest także przelewanie pieniędzy z karty kredytowej. Aczkolwiek system w chwili obecnej obsługuje jedynie konta (zarówno klientów, jak i sprzedawców) w bankach USA, możliwe jest niekłopotliwe rozszerzenie go na inne kraje - pod warunkiem, że w danym kraju jakiś bank podejmie się współpracy z systemem i rozliczania cyfrowej gotówki. Podobnie jak w ecashu, także i tutaj możemy mieć do czynienia z różnymi walutami, w systemie została jednak z góry przewidziana możliwość automatycznej ich wymiany i przeliczania podczas transakcji.
CyberCoin nie jest w istocie systemem "prawdziwej" elektronicznej gotówki, lecz raczej "zakamuflowaną" formą dokonywania przelewów pomiędzy kontami. O ile w systemie ecash podczas transakcji przesyłane są między komputerami jak najbardziej realne, choć cyfrowe, pieniądze, o tyle tu wędrują tylko uwierzytelnione cyfrowymi podpisami dyspozycje: kto, komu i ile ma zapłacić. Prawdziwe płatności odbywają się bezpośrednio między bankami klienta i sprzedawcy. Pobranie gotówki do elektronicznego portfela w istocie jest nakazem przekazania jej ze swojego prywatnego konta - bądź karty kredytowej - na specjalne konto w wyznaczonym banku, na którym "zamrożone" są pieniądze aktualnie pobrane do "portfeli" użytkowników. Stąd - po dokonaniu płatności - są one przelewane na konto sprzedawcy. Rzeczywiste pieniądze zatem w tym systemie - w przeciwieństwie do ecasha - nigdy nie opuszczają banków; znaczenie tej różnicy najłatwiej zauważyć, rozważając hipotetyczną ewentualność awarii dysku w komputerze użytkownika, bądź skasowania plików składających się na "elektroniczny portfel". W przypadku systemu ecash tracimy w takiej sytuacji zawarte w "portfelu" pieniądze (o ile nie mieliśmy jego aktualnego backupu, np. na dyskietce) - tak jakby spłonął nam prawdziwy portfel z gotówką. Skasowanie "portfela" z CyberCoin odpowiada raczej zniszczeniu książeczki czekowej - pieniądze nadal pozostają na koncie, i po zgłoszeniu faktu awarii firmie CyberCash i zainstalowaniu sobie nowego "portfela" odzyskujemy możliwość korzystania z nich.
CyberCoin w przeciwieństwie do ecasha nie jest oczywiście systemem symetrycznym - programem Wallet możemy tylko płacić, a nie przyjmować płatności; do tego drugiego niezbędny jest Cash Register i odpowiednia umowa z firmą CyberCash. Jednakże tak jak w życiu codziennym, tak i w sieci znacznie częściej wydajemy pieniądze, niż je otrzymujemy, i zdecydowana większość przeciętnych użytkowników sieci jest zainteresowana przede wszystkim, jeżeli nie wyłącznie, właśnie możliwościami płacenia za jej pomocą.
Jak dotąd, bardzo niewiele banków na świecie zdecydowało się "postawić" na Internet i udostępnić swoim klientom możliwość obsługi swojego konta tą drogą. ++ Wśród tych, które to zrobiły, istnieje z kolei znaczne zróżnicowanie zakresu usług dostępnych poprzez Internet. W wielu przypadkach jest to jedynie możliwość dokonywania płatności poprzez przelew pieniędzy na inne konto - najczęstsze zastosowanie usługi home-banking - są jednakże i takie banki, które zdecydowały się zaoferować poprzez Internet niemal pełen zakres usług, nie wymagających fizycznej obecności w siedzibie banku (np. celem wpłaty gotówki...). Możliwe jest zatem - poza przelewami na inne konta oraz wyczerpującą informacją o aktualnym stanie własnego konta i historii przeprowadzanych na nim operacji - także np. przenoszenie pieniędzy pomiędzy różnymi swoimi kontami (np. z konta bieżącego na rachunek inwestycyjny, z karty kredytowej na konto bieżące itp.) zaciąganie i spłacanie kredytu w ramach linii kredytowej, a nawet składanie wniosków o otwarcie takiej linii czy wydanie karty płatniczej! Niektóre banki oferują nawet możliwość wystawienia przez nas na ekranie komputera czeku na nazwisko dowolnej osoby, który to czek zostanie przez bank wydrukowany i przesłany na podany przez nas adres. Jednym z pierwszych, o ile nie pierwszym bankiem, który zdecydował się zaoferować w Internecie tak szeroki zakres usług, był Security First Network Bank, z którego ofertą można zapoznać się pod adresem http://www.sfnb.com/ - jak sama nazwa wskazuje, jest to bank, który swoją działalność prowadzi głównie za pośrednictwem sieci!
Wspomniałem już, że głównym zastosowaniem usługi home-banking na świecie jest dokonywanie różnego rodzaju płatności, przeważnie regulujących jakieś rachunki - np. za telefon, gaz czy elektryczność. Istnieją firmy specjalizujące się w pośredniczeniu w tego typu transakcjach - korzystanie z ich usług może być czasami wygodniejsze od korzystania z home-bankingu oferowanego przez własny bank; jest także jedynym wyjściem w sytuacji, gdy nasz bank takiej usługi nie oferuje... Największą tego typu firmą pośredniczącą w home-bankingu w USA jest CheckFree (http://www.checkfree.com/), oferująca możliwość dokonywania praktycznie dowolnych płatności z kont w dowolnych amerykańskich bankach - zarówno za pomocą bezpośredniego połączenia modemowego, jak i poprzez Internet! Firma CheckFree eksperymentuje również z rozwiązaniem, które pozwoliłoby usługodawcom dostarczać rachunki swoim klientom - będącym abonentami systemu - również za pośrednictwem Internetu.
Wszystkie Internetowe serwisy typu home-banking, w przeciwieństwie do opisywanych wcześniej systemów płatności, raczej nie reprezentują żadnych "fajerwerków" technicznych: na ogół są to zwykłe (rzecz jasna szyfrowane przez SSL) strony WWW, do których dostęp zabezpieczany jest indywidualnym dla każdego użytkownika identyfikatorem oraz hasłem. Bardziej wyrafinowane mechanizmy kryptograficzne, jak widać, nie są uważane za niezbędne...
Jak już wspomniałem, systemem najbardziej obiecującym i mającym największe szanse na ustanowienie faktycznego standardu wydaje się być CyberCash. Nie jest on co prawda najpopularniejszy w liczbach bezwzględnych - w chwili obecnej w Internecie jest ok. 180 witryn przyjmujących płatności za pomocą programu Wallet, podczas gdy dwa razy tyle liczy sobie lista sprzedawców wykorzystujących First Virtual. Sytuacja jednak wygląda zupełnie inaczej, gdy uwzględnimy, że dwie trzecie spośród tych sprzedawców "zgromadzonych jest" w jednym miejscu - w InfoHaus, stworzonym przez First Virtual sieciowym "domu towarowym" dla drobnych sprzedawców informacji, oferującym im (oczywiście za dodatkową odpłatnością) pełną techniczną obsługę swojego sieciowego sklepu, bez konieczności wgłębiania się w zawiłości instalacji i konfiguracji serwera... W praktyce InfoHaus to targowisko wszelkiego informacyjnego śmiecia: poradników typu "sposób na szczęśliwe życie" czy "50 metod robienia biznesu w Internecie", ofert pisania listów miłosnych na zamówienie i kolekcji "pikantnych" rysunków. Nie wyrabia to bynajmniej First Virtual dobrej opinii jako kandydatowi do poważnego systemu elektronicznych płatności; CyberCash prezentuje się w tym kontekście o wiele lepiej.
Stosunkowo powoli rozpowszechnia się elektroniczna gotówka - mimo niezwykle szumnego zainaugurowania systemu ecash w 1994 r. obecnie jest w sieci tylko ok. 80 sprzedawców z nim współpracujących; jeszcze mniej - co jest zrozumiałe ze względu na krótki czas istnienia tego produktu - akceptuje CyberCoin. Wszystkie te liczby jednakże nic nie znaczą w porównaniu z tysiącami już sieciowych sklepów "tradycyjnie" wykorzystujących karty kredytowe, które wciąż są w Internecie najpopularniejszą formą płatności. Być może czas bardziej zaawansowanych systemów dopiero nadejdzie...
Powrót do wykazu artykułów o Internecie | Statystyka |