Verdens mindste computer?

 Computer, Digitalt  Comments Off on Verdens mindste computer?
Apr 302013
 

I denne og et par efterfølgende posts vil jeg beskrive designet for det der måske er verdens mindste computer. Specifikationerne er små og få, og ligeså er de komponenter der skal til at bygge den. Selv om der måske kun er begrænset anvendelighed for denne computer vil den ikke desto mindre give et godt indblik i, hvordan computerlogik konstrueres. Jeg vil også med afsæt i dette komme ind på, hvordan (silicium baserede) computere ikke skaber information, men kun kan smide information væk... Underligt som det nu kan lyde er dette ganske nyttigt alligevel og jeg vil drage nogle paralleller til hvordan vores hjerne (carbon-computeren) virker.

Specifikationerne for designet er -

  • 3 bit input - 1 databit og 2 bit til instruktionen
  • 3 bit output - 1 databit og de resterende 2 bit output bruges til et instruktionsregister. Mere herom senere.
  • 4 unikke instruktioner til at manipulere input med og generere output.
  • Logikken kan bygges med 2 (to!) stk integrerede kredse - 1 stk 2-input NAND chip og 1 x 3-input NAND chip. Strømkreds, input givere og output givere er ikke med i designet men skulle kunne laves enkelt af de fleste.

Hvad er en computer?
Definitionen fra wikipedia er passende i denne henseende:

"A computer is a general purpose device that can be programmed to carry out a finite set of arithmetic or logical operations."

Vi vil kigge på de logiske operationer der kan komme på tale med vores 1-bit computer, og se hvorfor termen "finite set" (endeligt antal) er vigtigt.

Da vi har 1 bit at gøre godt med (input = 0 eller 1) er spørgsmålet hvad vi kan gøre med denne information? Jeg vil sætte 4 systemer op og vise at dette er de eneste 4 systemer der er mulige, dvs vi har et endeligt antal logiske operationer. I det efterfølgende vil jeg benævne input bits med bogstaver a,b,... I 1-bit computerens tilfælde har vi kun input på a. Output benævnes med f.

  • Uanset hvilket input a er givet, smid tallet væk og sæt output f = 0. Vi vil kalde denne model S(0) af årsager der bliver klar om lidt.
  • Hvis a=0, sæt f=1 og hvis a=1, sæt f=0. Vi kalder denne model S(1). Dette svarer til den logiske operation f=NOT(a).
  • Sæt f=a. Vi kalder denne model S(2). Dette svarer til en simpel overførsel af input bitten til output.
  • Uanset hvilket input a er givet, smid tallet væk og sæt output f = 1. Vi kalder denne model S(3).

Dette er de eneste 4 systemer der kan laves med en 1-bit computer! Lad mig stille tallene lidt anderledes op, så det ses hvorfor.

input
a   1 0
Model S(x)  Output Operation
S(0) f= 0 0 f=0
S(1) f= 0 1 f=NOT(a)
S(2) f= 1 0 f=a
S(3) f= 1 1 f=1

Tallene i venstre kolonne svarer til værdien af det binære tal til højre udtrykt i vores 10-talssystem. Givet der kun er 1 bit til rådighed til input (a=0 eller a=1) ses det umiddelbart at der ikke er andre operationer der kan producere andre unikke output, end dem der allerede er skrevet her.

Uden at komme nærmere ind på detaljerne kan det siges at disse logiske operationer forholdsvist nemt kan implementeres med diskrete komponenter.

  • S(0) implementeres ved at trække output f til Nul i en strømkreds.
  • S(1) implemeteres ved at sende input a gennem en inverter til output f.
  • S(2) implementeres ved at sende input a gennem en buffer til output f.
  • S(3) implementeres ved at trække output f til V+ i en strømkreds.

Problemet med disse systemer er dog at de er hardwiret til at udføre én og kun én logisk operation. Det ville være mere praktisk, hvis vi kunne bygge en computer der kan udføre alle 4 forskellige operationer. Det er muligt og det vil jeg beskrive i næste post.

 

 

 

Internetcensur i Danmark. Og hvorfor det ikke virker.

 Computer, Medier  Comments Off on Internetcensur i Danmark. Og hvorfor det ikke virker.
Apr 202013
 

 

I Danmark er ytringsfriheden sikret gennem Grundlovens §77, men på trods af dette er adgang til visse medier på internettet blokeret. Dermed er dansk praksis i samme liga som f.eks. Kinas, hvor hjemmesider (udenfor Kinas grænser) blokeres af den kinesiske regering fordi de ikke kan lide dem af den ene eller anden grund, eller det der gives udtryk for på disse sider.

§ 77. Enhver er berettiget til på tryk, i skrift og tale at offentliggøre sine tanker, dog under ansvar for domstolene. Censur og andre forebyggende forholdsregler kan ingensinde påny indføres.

Jeg vil her forklare lidt om baggrunden for denne praksis, hvad den danske stat evt. ønsker at 'beskytte' os fra,  og hvorfor det ikke virker, fordi enhver med et minimum af teknisk viden kan omgå blokeringerne. Den danske praksis ender derfor med kun at være en hindring for almindelige brugere, og ikke en måde at forhindre adgang til ulovlige websites af den ene eller anden karakter. Jeg vil straks gøre det klart at dette indlæg IKKE er en opfordring til ulovligheder på nettet, men udelukkende et forsøg på at vise, hvorfor den danske fremgangsmåde kun har negative effekter for almindelige netbrugere og ikke kan forhindre nogen som helst i at tilgå et blokeret website, hvis de skulle have disse hensigter.

Internetkontrollen (censur) i Danmark sker vha. såkaldt DNS-blokering. DNS-blokering svarer i korte træk til, at hvis man forsøger at ringe til et bestemt telefonnummer, stilles man via sit telefonselskab om til en telefonsvarer der siger at abonnenten ikke kan nås, fordi vedkommende har lavet noget ulovligt. Hvis man forsøger at gå ind på en internetside, der er DNS-blokeret vil man tilsvarende f.eks. få følgende meddelelse, der kommer fra internetudbyderen og ikke fra det søgte website:

 

STOP

TDC har spærret for adgangen til www.thepiratebay.se. Retten har ved fogedforbud af 9. juli 2012 pålagt Telenor at hindre sine kunders adgang til ovennævnte side, da der på siden formidles adgang til materiale, der krænker ophavsretten. På baggrund af denne kendelse har TDC i overensstemmelse med aftale i Teleindustrien spærret for adgangen til siden. TDC har ikke foretaget nogen registrering af dit besøg på denne side.

TDC

 

Tre emner trækkes ofte frem når der tales om internetblokering, og selv om blokeringen har et ædelt formål, virker den danske DNS-blokering ikke, fordi enhver med ønsket om at omgå blokeringen kan gøre dette på mindre end fem minutter. Lad os først se på det, som DNS-blokeringen forsøger at forhindre og derefter hvorfor det ikke virker.

  • Download og deling af opretshavsligt materiale.  Thepiratebay.se er blokeret fordi dette website har været brugt som server og deling af musik/film der har været opretshavsligt beskyttet. Jeg har fuld forståelse for at kunstnere skal have penge for at andre nyder deres kunstværker. Problemet er i denne sammenhæng dog at thepiratebay.se også har masser af ANDET indhold der ikke er ulovligt kopieret og uploadet. Hvis man som mig er interesseret i 3D-printerteknologi resulterer DNS-blokeringen i at jeg ikke kan få adgang til alle de filer og designs der er lagt ud til deling fuldt lovligt af andre, der også er interesseret i 3D-printerteknologi.
  • Børnepornografisk materiale. Der bør efter min mening gøres noget MEGET MERE EFFEKTIVT ved dette problem end at indskyde et filter, der kan omgås på fem minutter. Rigspolitiet og organisationen Red Barnet er indgået i et samarbejde om at blokere et antal af sites, der indeholder (potentielt) børnepornografisk materiale. Problemet med denne tilgang er dog tydelig:
    (1) Det pornografiske materiale er stadig tilgængelig for personer der ikke befinder sig bag en dansk internetudbyder. Børnene er derfor ikke beskyttet for yderligere fornedrelse ved at andre kan kigge på materialet. Det svarer lidt til at stikke hovedet i sandet og tro at problemet er forsvundet. Desuden har harddisken.dk i et program dokumenteret, hvorledes private aktører har formået at lukke flere sites i løbet af få dage, end politiet har formået over flere måneder.
    (2) Registret over blokerede sites administreres af Rigspolitiet og er ikke offentligt tilgængeligt. Et website kan tilføjes til listen uden rettergang eller domsfældelse. En liste over 3863 blokerede sites er tilgængelig på wikileaks og altså ikke hemmelig længere. Det er mindst én gang sket at Politiet uberettiget har lukket for et website og måtte undskylde for det bagefter.
    (3) Med mindre man mener at vores skandinaviske medmennesker i Norge og Sverige er mere interesserede i børnepornografisk materiale, er der noget helt galt med filteret. Tilsvarende filtre i Norge og Sverige blokerer henholdsvis 10000 og 20000 henvisninger hver dag (2005 tal). I danmark blokeres dagligt 2700 forsøg på tilgang til blokerede sider (tal fra 2008).
  • Formidling af (ulovlig?) medicin på nettet. Lægemiddelloven §7 giver kun ret til forhandling og udlevering af medicin i Danmark med en markedsføringstilladelse. Uden markedsføringstilladelse er det forbudt at forhandle og udlevere medicin. Det første eksempel på blokering af et udenlandsk webfirma der sælger medicin er dokumenteret. Som for de to andre eksempler ovenfor har DNS-blokering ingen som helst effekt overfor personer der skulle have til hensigt at skaffe f.eks. anabolske steroider eller andre medikamenter uden recept. Hvis man er villig til at løbe risikoen ved at sælge eller anvende dopingmidler er man sandsynligvis fuldstændig ligeglad med at man 'overtræder' et fogedforbud mod at besøge en udenlandsk webside... Desuden resulterer en ukritisk blokering af et helt website naturligvis også i, at det ikke er muligt at bestille andre (fuldt lovlige) varer fra websitet, og dette er (efter min mening) en hindring af varernes fri bevægelighed og derfor i strid med EU-lovgivningen.

Hvor er vi på vej hen?
Den danske praksis er flere steder kritiseret for at være en glidebane til blokering af f.eks. poker- og andre gamblingsites udenfor dansk lovgivning.

DNS-blokering er sågar anvendt i en fogedretssag mod et website ved navn www.homelifespain.com, fordi mæglerkæden Home åbenbart mener det er en varemærkeovertrædelse at anvende ordet "home"...  Fogedretten har udstedt krav om at internetudbyderen Telenor (og dermed indirekte alle andre udbydere i Danmark) blokerer for adgang til denne side.

Hvorfor er den danske DNS-blokering virkningsløs?
Jeg påstod ovenfor at enhver med et minimum af teknisk viden på mindre end 5 minutter kan omgå den danske DNS-blokering. Jeg vil her skitsere 3 måder. Da det jo ikke er med hensigt at opfordre til ulovligheder er dette ikke en teknisk How-To vejledning.

  1. Installer og brug din egen DNS-server. selv om det måske er lidt for avanceret for de fleste, er der intet til hinder for at installere en DNS-server på en computer i stedet for at anvende internetudbyderens DNS-server. Dette kan desuden spare dig for et par millisekunder, hver gang der skal slås op i DNS-tabellen (hvilket kan ske mange gange på en enkelt side ved fx. sider fyldt med billeder, reklamer, trackers, bots og andet 'spam'). At køre sin egen DNS-server sikrer naturligt også imod udfald ved en tredieparts  DNS-server.
  2. Anvend en tredjeparts DNS-server der ikke er kontrolleret af en dansk internetudbyder. Denne mulighed ligger lige for, hvis man har adgang til at rette i computerens/browserens internet settings. Google public DNS er én af disse services, openDNS er en anden. Der er desuden performance og sikkerhedsrelaterede grunde til at overveje at skifte fra internetudbyderens DNS-service til en anden, så dette er absolut én ting der er nyttigt at overveje. Hvis man ikke har administratoradgang til computeren kan der dog være policies der forhindrer én i at lave disse ændringer.
  3. Anvend en TOR-browser fra en USB-disk. Tor-projektet (kort for The Onion Ring) har Tor Browser Bundle, der sikrer brugerens anonymitet på nettet ved at omdirigere internettrafikken mellem et netværk af Tor-servere. Det er derfor umuligt for internetudbyderen at se, hvor computeren befinder sig og DNS-blokering er ikke relevant. TOR er udviklet af US Navy med det formål at beskytte regeringens kommunikation. For andre (aktivister, journalister, firmaer etc der ikke ønsker at kunne spores) forefindes de samme muligheder for internet anonymitet. Tor er baseret på Firefox browseren så de fleste vil finde denne ganske lig andre browsere at anvende.
    I sagens natur må ip-adresserne på Tor-netværket være tilgængelige for brugerne af systemet, og visse lande gør alt for at begrænse adgangen til Tor-netværket. Der foregår en kontinuerlig kamp mellem totalitære stater og aktivister der f.eks. ønsker at skaffe eller tilvejebringe information om menneskeretsovertrædelser. Jo flere der anvender Tor, desto sværere vil det være for dem, der praktiserer censur, at forhindre det. Ud fra et ideologisk synspunkt kan det derfor være fornuftigt at overveje om man skal være del af dette projekt og hermed hjælpe andre folk, der i endnu større grad end danskere er udsat for internetcensur.