søndag 21. februar 2016

Aftenposten om blockchain

Så en journalist fra aftenposten har hørt et foredrag om bitcoin, og kommer ut med stjerner i øynene

"Tapscott forteller helt kort at nå kommer en teknologi som kommer til å snu opp ned på hvem vi kan stole på i samfunnet."

Jeg husker man sa noe slikt om Segway også, da det ble annonsert første gang:  "...Cities will be built around this device." (iflg wikipedia). Og han presiserer videre:

"Det handler om å bygge et totalt pålitelig system, som er så sikkert at vi ikke lenger vil trenge store selskaper, eller stater, til å garantere for de mest sensitive og verdifulle ting, som penger."

Men grunnleggende kildekritikk ser ut til å være helt fraværende her, for eksempel en vurdering av kildens motivasjon:

"Men detaljene, forteller Tapscott, får vi vente med til boken hans om blockchain kommer i mai."

Tenker nok det ja...

Videre følger en "lekmann"-forklaring av hva "blockchain" er for noe, en forklaring som ikke er veldig gal, men som sannsynligvis ikke sier så mye med mindre man kjenner teknologien fra før. Noen sitater:

  • "Blockchain er dypest sett et verktøy for å ta vare på sannheten i et samfunn der ingen trenger å stole på hverandre."
  • "Det spesielle er at regnearket ikke lagres et spesielt sted, men over hele verden i helt identiske kopier."
  • "Ved hjelp av såkalt "hashing" er det mulig å se øyeblikkelig om det er innført en eneste feil i protokollen. Dette er ekstremt effektivt."
For å gjøre det litt mer folkelig vil jeg prøve meg på en litt enklere forklaring med følgende metafor: blockchain er som en lang, sammenhengende kassalapp som det er umulig å endre etter at den er skrevet. Med dette i bakhodet, la oss se videre på påstandene som kommer frem i artikkelen:

  • "Hvis en blockchain for eksempel inneholdt alle regnskapene til alle bedrifter i Norge, kunne hvem som helst med et øyekast se om noen en eller gang i løpet av historien har forsøkt å føre inn et eneste feilaktig tall."
  • "Det gir en etterrettelighet som tradisjonelle systemer ikke er i nærheten av."
Men hør nå her: selv om en fysisk papirrull fra et kassaapparat ikke er umulig å forfalske på samme måte som blockchain er, så er det likevel ikke i denne kassalappen at forfalskningene skjer. Vi kan for alle praktiske formål anta at også en slik fysisk, papirbasert løsning er umulig å endre etter at den er skrevet, men folk klarer likevel å forfalske regnskap! Prøv å tenk litt på hvordan dette henger sammen. De som forfalsker regnskap gjør det ikke ved å endre på kassalappen, de gjør det ved å flytte penger som aldri skrives til kassalappen i det hele tatt! For bitcoin finnes ingen parallell til dette, fordi det er umulig å flytte bitcoins uten å skrive det inn i blockchain, så dermed virker dette som et vanntett system, men dette er ikke hele systemet. Det er bare en liten del av systemet, og det er den delen som er enklest å sikre.

Selv om en hash-kode (for alle praktiske formål, i denne konteksten) er umulig å forfalske betyr ikke det at systemet som helhet er sikkert. For bitcoin sin del inneholder blockchain bare listen av overføringer mellom bitcoin-lommebøker, men for å kunne bruke penger som ligger i en slik bitcoin-lommebok trenger du en privat nøkkel og lommeboken inneholder både denne og andre sensitive data du må passe godt på. Dette er vanskelig. Aftenposten påpeker jo dette til og med selv ved å linke til en tidligere artikkel som sier at "Bitcoins for milliarder tatt ut av sirkulasjon". Så selv om blockchain er umulig å forfalske, hindret ikke dette MtGox i å miste sine kunders bitcoins.

Og siden alle unntatt de mest risikohungrige eventyrere skjønner dette (eller vet at de ikke skjønner det og derfor klokelig holder seg unna) ser det ikke ut til at bitcoin kommer til å erobre verden riktig ennå.

"En viktig garantist for sannheten i dag, er banker. Hvor stor del av bankvirksomheten består ikke av å holde rede på hvem som eier hvilke penger? Det er jo nettopp dette en blokkjede gjør. Ikke rart at direktør Christoffer Hernæs i Sparebank 1 og hans folk har gått i gang med å se på hva de kan bruke blockchain til."

Som sagt skal det veldig mye mer til enn en hash-kode for å skape tillit. Utfra det korte avsnittet over er det vanskelig å lese hva Christoffer Hernæs faktisk mener om tillit, men om direktøren i en bank faktisk tror at en hash-kode er nok vet jeg i hvert fall hvilken bank jeg ikke skal sette pengene mine i.

Men tilbake til påstanden om at en hash-kode gjør alt så ekstremt effektivt. Jeg skal si litt mer om dette etter hvert, men nedover i artikkelen blir dette punktet ekstrapolert videre i følgende to punkter:
  • "Mye av det banker i dag foretar seg kan automatiseres."
  • "Blockchain 2.0 gjør det mulig å for dataprogrammer til å drive store organisasjoner, i prinsippet uten at mennesker trengs i administrasjonen."
  • "De mange sjåførene hos Uber vil ikke lenger trenge en sentral organisasjon med verdensherredømme, som stikker av med et gigantisk overskudd. I stedet vil alle oppgavene kunne utføres desentralisert i en blokkjede."
Altså, jeg tror ikke jeg overdriver om jeg påstår at 80% av verdens programmerere jobber utelukkende med å gjøre organisasjoner mer effektive så man kan bruke mindre ressurser på administrasjon. Og dette har vært situasjonen de siste 50 årene. Dersom hash-koder var nok til å fikse dette hadde vi vel gjort det for lenge siden.

Men altså, effektivitet. Siden bitcoin skriver transaksjoner inn i blockchain på en måte som gjør at de ikke kan endres senere, får man altså en kvittering som er umulig å forfalske, og dette uten noen form for menneskelig involvering, og uten at noen sentral myndighet eller organisasjon garanterer for transaksjonen. Men dette har faktisk en pris. For bitcoin er denne prisen følgende begrensninger:
  • det tar 15 minutter å få bekreftet en transaksjon. Dette tilsvarer altså at du som kunde skulle stå i butikken og trykke "kode og klar", og så må du vente 15 minutter før du får kvitteringen
  • det er en teoretisk øvre grense på 7 transaksjoner per sekund (den praktiske grensen er sannsynligvis mye lavere). Sammenlign dette med paypal som utfører 115 transaksjoner per sekund eller Visa som utfører 2000.
  • For å produsere denne kvitteringen trengs 14 kWh energi, som er hva en gjennomsnittlig norsk husholdning bruker på et kvart døgn. (Iflg beregninger jeg fant på reddit)
Resten av artikkelen glir ut i et grenseland mellom new-age og sci-fi.

lørdag 27. september 2014

Trying to understand keybase.io

I have recently been invited to keybase.io, and to increase my understanding of how this works, I will try to accomplish the same as keybase provides, but manually using the gpg commandline.;/p>

The goal of keybase.io is to create links between public keys and online identities. For example, I have a public pgp key which can be downloaded from here: https://pgp.mit.edu/pks/lookup?op=vindex&search=0xDC82662DC1136424

To fetch my key into your gpg keyring, use:

gpg --recv-keys 0xdc82662dc1136424

This key is combined with a certificate where I claim that my email-address i rolf.ness(at)pvv.org. Using gpg you can check that this claim was made by someone controlling the private part of the key referred above. However, you cannot check if this claim is actually true. I'll get back to this later, but some other examples first.

Let's take a look at this blogspot account and make some claims about this:

My name is Rolf Rander Næss
I control the blogspot-account: rolfn.blogspot.no (a.k.a. rolfn.blogspot.com)
I have a pgp-key with id: 0xdc82662dc1136424
The key fingerprint is: 5D18 257C 9F45 7108 DFA6  AD51 DC82 662D C113 6424
This message is signed with this key

Now I can sign this message, proving possession of the corresponding private key, and by posting it here, I also prove that I control this blogspot account.

The signed message is below, it is formatted in binary (and the converted to ascii with base64) to avoid errors due to formatting, charset or copy-paste-errors.

-----BEGIN PGP MESSAGE-----

owGbwMvMwMF4pylN96BwigrjWka1JOGknPz04oL8Et3knMTM3GK9koqSELXqSt9K
hbzE3FSFzGKFoPycNIWgxLyU1CIFv8PLiot5uTwVkvPzSorycxRKMlIV4EYkJifn
l+aVWCkAZdLy9GDienn5ChqJetl6iXroMsn5uZog4zISy1IVEhUK0gt0s1MrFcoz
SzIUMlOsFAwqUpItjMzMjFKSDQ2NzUyMTHi5QoBWghSlZealpxYVFGXmlQCdaaVg
6mJooWBkau6sYOlmYqpgbmhgoeDi5mimoODoYmqo4OJsYaQANMlFwRlolALMLKAH
c1OLixPTwX4tzkzPS02B2F8CkgNaxMvVySjDwsDIwcDGygQKGwYuTgFYIPacZP/v
c2u1XP3Nswc5AyZaG/LpZ+Yc8xD5MO191gTXzY4zmd51SU8pcVy3z+XE8m7vI64f
LnQuLHlXv3plwM74Q/JWi5ZvMtYP9uHtbWivjLppy5ju9Obw39AQz5WxPFrSSne4
mW91sE7SiJZYZWZ49sn+XcVC8VN+yy7rfPbQNeJkxnROef6TqbLmXW/awurnJT6N
NDtdr1c3J0zf2I7H5OFaS3lNQ5u/npddpmTuWuS6y9PGwvOMbm+XemJX3DktZaFl
ESuvqKkVCvw+oHmcWSb2Z7OmZdUGFbZmjhNOYf5+/yY9ct4xW2nqo4Tgiz8KX6ZM
EL1ZPrX3YNTWtjax/19OZ+gfu88qKr7v19ovegA=
=DCLD
-----END PGP MESSAGE-----

So, by posting this here, I have created a two-way link between my blogspot-account and my private key. (However, in this particular case it is not worth much, because blogspot doesn't support https, so a man-in-the-middle could change this message before it reached your browser).

If you have my key imported, you can paste this message (including "BEGIN" and "END") into gpg, and gpg will tell you that the signature is good (i.e., that it was made by someone controlling the key). You should check that the fingerprint in the message and the fingerprint reported by gpg match.

Lets try the same for twitter, which is slightly more useful. Here is a statement with a similar set of claims:

My name is Rolf Rander Næss
I control the twitter-account: @rolfrander
I have a pgp-key with id: 0xdc82662dc1136424
The key fingerprint is: 5D18 257C 9F45 7108 DFA6  AD51 DC82 662D C113 6424
This message is signed with this key

The binary-encoded, signed, ascii-armoured version is:

-----BEGIN PGP MESSAGE-----

owGbwMvMwMF4pylN96BwigrjWkamJKGS8sySktQi3eScxMzcYr2SipIQtZo+30qF
vMTcVIXMYoWg/Jw0haDEvJTUIgW/w8uKi3m5PBWS8/NKivJzFEoyUhVgJiQmJ+eX
5pVYKTgAZdKKwDpAajMSy1IVEhUK0gt0s1MrFYCqMxQyU6wUDCpSki2MzMyMUpIN
DY3NTIxMeLlCgOaBFKVl5qWnFhUUZeaVAN1gpWDqYmihYGRq7qxg6WZiqmBuaGCh
4OLmaKag4Ohiaqjg4mxhpAA0yUXBGWiUAswsoOtzU4uLE9PBHinOTM9LTYHYXwKS
A1rEy9XJKMPCwMjBwMbKBPI4AxenACyANixj/ytd1Xtd8ZtSfORNsTlL+Z+r+7+I
+iWw+n+TvLKiRvl1dnOW8JSHhY16IV7vfocJep8+udOGK9Ot8NmJJPsuA+XFjRu/
Bjy5emDeDzW5l643dpStSGqe1fX106JVCyvqn5qJ6x7+o3dzmUvYm3aGH+Gzsia4
7zk9+XjC5L2T5ae7fX9y75fHtNjT3V9ykkSO7enZZaJ3QoZJcp7BFRWn/Uv/Fr+z
jNvw1aznhGYgn/Ax1o+q/x+F+G3nzf1z0ni595Tfth8uJSw9MsXRbgI/X7lw+Myu
fvllK+/VTreZdMBYX/LCUh8Jq43+za5GiUw+AcqW/n+aXm4PCT4lblXKsHHLyl6l
CrUfu3asltS8/R4A
=pG8g
-----END PGP MESSAGE-----

As before, this proves that the person making these claims possess the private part of the key with this fingerprint. Now, if I could post this to twitter, I would also prove that I control the twitter account and thus provide a two-way link. However, twitter only allows 140 chars, so the message above is to large. To get around this, I only post a hash of this message to twitter. The hash must be constructed from the binary encoded message, again to avoid formatting or cut-and-paste issues. Starting with the pgp-message, the hash can be obtained by piping the message into this command:

gpg 2>/dev/null | openssl sha256 -binary | openssl base64

which returns NMTiZ2clKwsuQnRFQjFxuL1oTL6NE+R2doBG3ohPThA=

now chech twitter: https://twitter.com/rolfrander/status/515794922851827712

since twitter use https, you can trust (within reason) that no man-in-the-middle has changed this message before it reached your browser.

Now, there are some pieces of software and quite a few organizations you need to trust to be able to trust this key, but I'll get back to that in a later post...

So, given the steps (and caveats) above, you have now established, within reasonable doubt, that:

  • the person controlling the private part of key 0xdc82662dc1136424
  • also controls the address rolfn.blogspot.no
  • and controls the twitter-account @rolfrander

However, what you have not done, is to prove anything about who I really am. To do that, you have to meet me in person (and possible check some government issued ID, depending on your usecase). If we meet, I can provide some data which enables you to connect my real-life identity to my key. Previously this would mean me giving you a hash of my key, which you could check. However, now that we have established a connection between my twitter-handle and my key, I only need to give you my twitter-handle, which is much easier for you to remember.

This is basically what keybase.io does, but it is wrapped in a nice user interface and with a tool which makes it easier to handle. I addition, they have the added functionality of "tracking", I will get back to that later.

Edit: I just realized that the command for computing the hash above really just hash the message, not the signature, which keybase hash message+signature. I don't think this has any security implications, but there could be some corner case I havent seen yet.

Anyway, the message signed by keybase includes other security measures as well, such as the current time, so I really recommend using keybase as opposed to doing this yourself.

And I am on keybase as well: https://keybase.io/rolfn

Edit 2: oh, and one more thing: I promised to get back to the email example. My pgp-key (as posted on keybase and on the network of public keyservers) contain one or more email-addresses. How can you be sure that these are accurate? First of all, we need a precise formulation of what this is:

  • The key contains a claim about my email-address
  • This claim is signed with my private key (verifiable with the public key), thus it contains proof that I posess the private key

Now, what we want to check is that I also control the email-address. This can be done using challenge-response authentication. For example, if you email me some unique data (such as a random number), encrypted with my public key, I need access to my private key to decrypt. Then I can sign this number with my private key and return to you. If I was able to decrypt correctly and sign verifiably, this proves that I have the correct private key. Since this was done through my email address, it also proves that I control the email-address.

But do note that you still don't know for sure who I am, you just know that the email-address and the private key are controled by the same entity. To prove you are talking to me, we need to meet in person.

mandag 2. juni 2014

Re: Client Feedback On the Creation of the Earth

Regarding:
http://www.mcsweeneys.net/articles/client-feedback-on-the-creation-of-the-earth

Dear Mike, thank you for this thorough feedback. I will run this by my engineering team, but I can give some preliminary feedback on the issues you point out.

1. Please note that "day" and "night" are just handles we use internally. Wording and translation to different languages is the customer responsibility, and we have provided a configuration system for this purpose. Please see clause 5b in the contract.

2. Well, you didn't provide any strict requirements regarding color, but you had quite a few requirements regarding the composition of the atmosphere and the fact that carbon-based life were to be able to live on "earth" without external support systems. Finding the right balance here turned out to be quite a challenge, but I believe we found a good tradeoff between cost and functionality. The color is really just a consequence of the composition of the atmosphere and there is nothing we can do about this so late in the process.

3. Unfortunately it is not possible to make life out of carbon alone, you also need fluid to transport stuff around (sorry about this simple explanation, my engineers can get back to you with more details if necessary). Water turned out to be the most stable fluid available. I realize that the amount of water might seem excessive, but it is really necessary to get everything working.

4. I'm not sure where you are getting at. You specifically wanted carbon-based life. Now, your definition of "life" might differ from the generally accepted meaning in the industry, but some sort of "reproduction" is usually regarded as a key ingredient. The "seeds" and "fruits" (these are your terms, our internal, technical terms are more refined) are needed for reproduction.  Thus no "seeds"; no life.

5. This is really a cost issue. It turned out that creating a source of light was far, far more expensive than expected. Thus we only created one. The second source you see at night is really just a reflection of the primary source. We considered adding more reflections like this, but it soon became unstable and crashed.

6. As I explained above, we need sea to get life. The fact that the life also spreads to the sea is a side-effect of life. (Actually it was the other way around, it turned out that the easiest way of bootstrapping the life-process was by starting it at sea, but this doesn't matter. Even if we had started the life on land it would have spread to the sea eventually)

7. The birds was just an add-on, really. One of our engineers thought it would be a fun idea and added it. I believe it adds more drama and movement and overall makes the system more rewarding to use.

8. You can regulate the amount of animals by adjusting the amount of plants available. Please see the users manual.

9. They aren't really made "in my image", that is just something the keep telling themselves to boost their own ego and sense of superiority. But they are really at the top of the food-chain, and that means the can pretty much do what they like. I understand that this can be a PITA, but life is usually structured like this, with one species on top, and everything else is really just a consequence of this.

10. Please see note about life above (pt 4). Mankind, being at the top of the food-chain, cannot be expected to figure out the most rational way to behave by themselves. Everyone else on "earth" is hunted by someone else and will adapt the behavior necessary to avoid extinction. Previous trials show that this doesn't work with the species on top, and they need to be told what to do. If not given explicit instructions to "be fruitful and multiply", they will just vanish after a few generations. Please note that we tried to put this as delicately as possibly, using the euphemism "fruitful" instead of more explicit terms.

Working on sunday is a no-go, but I will gladly bring my chief architect to go over these issues with you and your stakeholders on monday.

regards
God

torsdag 26. september 2013

Tolkning av skarptrommestemmen i Ravels Bolero

Et studium av fremføringstradisjoner representert hos Spotify
Skarptrommestemmen på Bolero er som kjent en monoton rytme av to takter som repeteres gjennom hele verket, nemlig:

Men selv om dette tilsynelatende er enkelt og monotont vil jeg påstå at det likevel er rom for tolkning og frasering.
Spørsmålet er: er det riktig å tolke inn noen frasering, og er det vanlig å gjøre det?
Til min rådighet har jeg i underkant av 200 ulike innspillinger som finnes på spotify, her følger en oversikt over de mest bemerkelsesverdige.
Først vil jeg si litt om tempo. Wikipedia har en lengre utgreiing. Ravel har selv indikert et tempo på 66, som betyr varighet på rett under 16 minutter. Men praksis varierer fra 17:40 (Pedro de Freitas Branco – Le boléro) ned til 12:06 (Leopold Stokowski – Bolero). Barenboim/Chicago er sannsynligvis ganske nær Ravel sin intensjon.
Men det var frasering av skarptrommestemmen vi skulle snakke om. For å musisere dette og ikke bare høres ut som en metronom, mener jeg det vil være naturlig å legge en liten betoning på åttendelene på tredje slag i første takt, samt å la triolene i siste halvdel av andre takt lede tydelig frem mot eneren i takten etter. Stokowski nevnt over (raskeste innspilling) er et godt eksempel på hva jeg mener. Andre eksempler er:
Noen andre, litt mer fantasifulle varianter:
  • Lamoreux Concert Association (?) høres det ut som prøver å flytte triolene litt «til høyre» (uten å få det til hver gang)
  • Ja, det er vanskelig å spille svakt, men det må da gå an å spille litt svakere enn «trommemarsj»? New York/Kurt Masur
  • London/Abbado (Hæ? Det høres ut so mom trommisen var på fylla dagen før og ikke har kommet seg helt. Og dette er London med Abbado?!)
Og så har du de som virkelig ikke får det til. Noen er bare litt ujevne, slik at det blir en litt pussig frasering uten noen egentlig retning, mens de mest ekstreme ikke klarer å få samme klang med venstre og høyre hånd. Det blir nesten litt skolekorps-følelse i slutten av andre takt. Noen eksempler på dette:
Selv foretrekker jeg at det svinger litt av skarptrommespillet. Det er meningen at dette skal være en dans, og det blir en veldig kjedelig dans med en monoton metronom i bakgrunnen. Samtidig må fraseringene være forsiktige og subtile så det ikke tipper over i parodien. Boston/Ozawa synes jeg får det til bra.

torsdag 24. mars 2011

Designing an infrastructure for booting linux from iSCSI

The previous post outlined the components needed to boot linux with iSCSI root:

  • A kernel
  • An initial root-fs with necessary drivers and scripts for mounting an iSCSI-volume
  • The root-fs on iSCSI
  • Configuration

Keep in mind that all of this has to fit together. The init-root and iSCSI-root need a /lib/modules directory which has the kernel-modules compiled for the specific kernel loaded. I practice, the the init-root is built for one specific kernel, the actual root might support several (i.e., it will typically contain modules for each kernel ever installed), but userland tools might work only with the latest. The configuration needs to take this into consideration

Now, for actual requirements:

  • The iSCSI-root should be as general as possible, meaning I don't want any specific configuration inside this filesystem (there are some things actually needed, more on that below). This is because I would like to be able to create a new instance by cloning a template and booting this without having to change any config file inside the filesystem itself.
  • The same goes for the init root-fs and the kernel, these should be re-used across several instances.
  • There must be a naming scheme which makes it easy to understand which components go together
  • There should be no redundancy in the configuration, the same things should not be configured several places (as an inconsistent configuration could lead to hard-to-track bugs)
  • The configuration should be as concise as possible, just list the things that actually vary in a brief format

There are also a few other parameters that will (or should) vary between instances:

  • Ethernet MAC-address. This will be my preferred way of locating which configuration to use, that is: given a MAC-address, the configuration should determin all other parameters
  • IPv4-address, determined by MAC-address using DHCP
  • IPv6-address, I will probably not use DHCP, but instead use the router-solicitation mechanism in IPv6, as this is simpler and more elegant
  • Filesystem UUID. I don't think it matters if separate machines have the same UUID-s, but if I some day might try to mount these filesystems on the same machine, it will probably get confused.
  • Hostname. This could be determined by DNS, but it would probably be an advantage if the machine knows its name even if network hasn't come up yet. It could also be the other way around, that DNS is updated by DHCP when the IP is assigned. (This is more or less out-of-the-box functionality with many DHCP-servers. Unfortunately, there seems to be no standard solution for IPv6 yet)
  • SSH-keys, re-using these across machines would be a security issue.
  • iSCSI-initiator id, a unique name identifying the client.

The design for handling these parameters could be as follows:

  • The MAC-address is either determined by the ethernet-card (in a physical machine) or by the hypervisor-tools (in a virtual one)
  • IP-addresses are assigned automatically based on MAC
  • Boot-parameters (location of kernel and init root, along with parameters to mount the iSCSI-volume) could be set by the hypervisor or the DHCP-server
  • Filesystem UUID should be set when creating it (so if we are creating a new instance by cloning a template, it should be immediately followed by a change of UUID). Keep in mind that /etc/fstab should refer to something else than UUID (I am thinking volume label, but I will get back to this)
  • SSH-keys will be generated on first boot (the ssh startup script should check if keys exist, and generate them if not)
  • Hostname could be set manually on first boot.
  • iSCSI initiator id must be set outside of the bootet system, as this needs to be available before it has access to the actual root-fs, but it must also be known to the machine itself, because it might want to attach other iSCSI-interfaces after it has booted. One possibility is to create an address-structure based on MAC (even one more id attached to the MAC...)

onsdag 23. mars 2011

How to boot linux from iSCSI

I would like to boot virtual (or physical) linux hosts from the network, with an iSCSI-device as root.
There are bits and pieces of information concerning this available, but I have not been able to find a complete guide to how this is done.

This is what I would like to do:

  • Load the kernel, either using the Xen bootloader or with PXE (network boot)
  • Attach to an iSCSI-disk available somewhere on my local network (in iSCSI-terms: let the newly booted linux be an iSCSI-initiator and log it in to an iSCSI-target)
  • Mount the iSCSI as root
  • Continue booting from the new root-filesystem
This is more or less the same as booting from NFS, but iSCSI is far more efficient than NFS

To get this to work, we need the following pieces:

  • A kernel that can loaded before the filesystem is mounted, which means that it needs to be copied over to another location outside of the host we want to boot. For xen, this can be anywhere on the Dom0 filesystem, but to be really general and independent of any local hardware, it should be put on a tftp-server
  • The initial root filesystem (initrd.img) needs to be in the same place
  • Some configuration telling the bootloader where to find the kernel and the root filesystem. With XEN, this could be the xen config file, but for PXE, it should be placed in the dhcp-configuration.
  • After booting the kernel with the initial root-fs, it will need some tools to mount the actual root-fs from iSCSI:
    • Kernel modules for iSCSI. I'm not exactly sure what the minimum set is, but we probably need atleast iscsi_tcp.
    • Tools to connect to iSCSI, iscsistart
    • Configuration of where to find the iSCSI-volume
    • Scripts pulling everything together
  • Scripts run by init on the initial root file-system will mount the actual root from iSCSI and continue booting from this.
Se initrd(4) for a detailed and general description of the boot-process. (However, this seems a bit out of date, because it refers to LILO and LOADLIN, and seems unaware of GRUB. Documentation/initrd.txt seems just as outdated.)

I have investigated the kernels bundled with the latest ubuntu and debian variants and found that:

  • Both have the neccessary kernel modules included in initrd.img
  • Debian have scripts for setting up iSCSI included in initrd.img
  • None have the iscsistart-tool
But wait a minute, what really happens here? Actually, the initrd.img is not copied from an installation-archive, it is generated when installing the kernel. This is infact documented, if you know what to look for:
  • initramfs-tools is the tool actually generating the image. The contents is from /usr/share/initramfs-tools. Some other packages put contents here.
  • open-iscsi provides the iscsi-script mentioned above
  • It also provides the iscsistart command, but apparently not in a location picked up by the initramfs-tools.
Further digging and searching (use the source, Luke...), and voila: if you create /etc/iscsi/iscsi.initramfs with default values for the iscsi-configuration, the neccessary files will be included when generating the initramfs. This is actually described here.

This was the general info on how this fits together, some recommendations to actual setup will come in a later post.

torsdag 10. mars 2011

Powershell for Unix-users

Powershell is an object-oriented scriptinglanguage bundled with windows-7 and windows server 2008 which is heavily influenced by unix scripting, python, perl, lisp and more. This guide lists some common unix-commands and their powershell equivalents.  Please note that they are not completely equal, as unix-commands works on streams of bytes, typically split into lines, while powershell works on streams of objects.

grepWhere-Object, but see below for details
cdSet-Location, but cd is an alias
catGet-Content, but cat and type are aliases

grep "pattern"
If input is a list of strings, the Select-String command is equal to grep:
Select-String -Pattern "pattern"
However, input will typically be a stream of object, and what you want to do is to filter this. Thus Perl grep or Common Lisp remove-if-not which both accepts a general selection function as parameter are more appropriate. The PowerShell command is inspired by SQL SELECT WHERE ...
Where-Object { current object is $_ }

søndag 6. februar 2011

troll i eske februar

kommende filmer fra filmweb.no, minus de som vises på gimle filmfest og minus de som ikke er "troll-i-eske-genre":
  • Fjellet
  • Miral
  • 80 dager
  • 14 kilometer
  • onkel boonmee
  • the adjustent bureau
  • exteriors

torsdag 3. februar 2011

netfilter

Linux has a very comprehensive set of modules for filtering and changeing network packets as they flow by the network stack. However, this framework has been through several major and quite a few minor re-designs (the last major one seems to be the introduction of the nf_conntrack subsystem i 2.6.15).

There are vast amounts of documentation available on the web, but very little is up to date with the last changes. I will try to summarize my experiences with kernel 2.6.32.

Some pointers for good places to start:

  • This is a good introduction, which also covers the last changes (pdf)
  • The authorative source is netfilter.org, but most documentation there is outdated by almost a decade.
  • This tutorial from Oskar Andreasson is not too out of date
  • You can also take a look at the wikipedia page for iptables which has a nice flowchart

A quick introduction for the impatient:

  • Each network packet is sent through a set of tables
  • For each table, the packet is sent through a set of chains, which chains depend on the final destination of the package; inbound, outbound or routing through (see the drawing on wikipedia for a full picture
  • Each chain has a default rule, and can have a set of additional rules
  • Each rule is a filter and a command. The filter can be anything that the netfilter framework can find in the package: interface, source, destination, port, protocol etc. The command is either a pre-defined one (DROP, ACCEPT, REJECT etc) or a user-defined table. The filter kan be regarded as an "if"-statement, and the command as a functin call. But pay attention that not all commands make sense in all tables or all chains. Read the documentation for details.

tirsdag 1. februar 2011

udhcpc

One of the utilities bundled in BusyBox is the udhcpc DHCP client.  This is a tool according to the unix principle of: do one thing and do it well.  The udhcpc command handles the DHCP protocol as described in RFC 2131, but it doesn't actually configure the network based on the replies.

However, the documentation available from busybox is not very comprehensive.  There is a man-page available which can be found by googling udhcpc - very small DHCP client.

The operation of udhcpc is simple and unix-y.  When it receives a reply from a DHCP-server, it calls a script with one parameter, which is one of:
  • deconfig: remove configuration (when lease is lost or udhcpc starts)
  • bound: moving from unbound to bound state (receives configuration)
  • renew: lease is renewed
  • nak: nak received from server
  • leasefail: (not documented in the man-page): run if there is no reply after configured timeouts and retries
lots of other configuration parameters available as environment variables.  The example scripts included with busybox implements these by configuring udhcpd to call a script which calls: simple.$1 (and of course there are 4 scripts: simple.deconfig, simple.bound, simple.renew, simple.nak).  Simple and easy!

I have basically used the sample scripts that came with BusyBox (examples/udhcpc/*), but converted them to using the ip(8)-command instead of ifconfig(8). I also added logging to syslog with the following function:

log() {
  logger -p daemon.info -t dhcp $*
}

tirsdag 25. januar 2011

dnsmasq

dnsmasq is a wonderful little daemon providing dhcp (IPv4) and dns, and integrates these, so a client provided with an IP-address using DHCP will also be available through DNS.  And it is really easy to set up, it gets all relevant information from /etc/hosts and /etc/ethers, but you can also add extra parameters through command line or config file.


Configuration

The build system for dnsmasq doesn't come with configure, but there are really few options and these can be manipulated with the make command line, or, as I did, by changing config.h. I removed:

  • tftp-support (cmdline: COPTS=-DNO_TFTP), if I want to boot machines through the network, I will use my regular fileserver for tftp, not the firewall
  • script-support (cmdline: COPTS=-DNO_SCRIPT), I don't think I will need scripts, and including them seems like a potential security problem

Build with make and install in /usr/sbin.

installing ssh

Naturally, I could just copy ssh from my regular ubuntu-installation, but that wouldn't as rewarding, and it is nice to be able to exclude features I don't need.

OpenSSL

To build ssh, we first need openssl. I set PREFIX to a separate directory, to be able to run make install with full control over which files is included in the distribution.

mkdir /home/build/firewall/dist
PREFIX=/home/build/firewall/dist
cd openssl-1.0.0c/
./config --prefix=$PREFIX
make -j 3
make install

OpenSSH is statically linked with OpenSSL, so no openssl-files are actually needed on the firewall. The openssl client utilities are meant for manipulating certificates or testing ssl connections. This functionality will not be needed on the firewall.

OpenSSH

Openssh built in a similar fashion:
cd ../openssh-5.6p1/
./configure --help
./configure --with-ssl-dir=$PREFIX --prefix=$PREFIX --with-privsep-user=sshd --with-4in6
./configure --help
make -j 3
make install
From the dist-directory I made a selective installation of just some utilities:
  • ssh
  • ssh-add
  • ssh-agent
  • ssh-keygen
  • ssh-keyscan
all installed in /usr/bin, and sshd installed in /usr/sbin. Configurationfiles are taylored and put in /etc/ssh. The daemon is started from inittab using:
::respawn:/usr/sbin/sshd -f /etc/ssh/sshd_config

Basic linux setup

First things first: basic linux installation. From scratch.

Linux kernel 2.6.37

  • there is no need for every driver available as a module, what I need is xen-support, basic drivers and some networking. As a baseline, a minimum set of driver compiled in should be sufficient. However, quite a few network-modules would be "nice to have" (tunneling, ipsec, vlan, bonding etc) but not needed for booting, and some of these needs to be modules to be able to provide load-time parameters.
  • there is also no need for an initial ram-disk, this will be a small, simple setup with one ext2-partition, and the few drivers needed for boot will be linked into the kernel
I have set up a 4GB logical volume in dom0 for the installation. (Normally I would use iSCSI, but the firewall must be able to boot without any other networking present. Infact, the iSCSI-server expects to get an IP-address from the firewall with DHCP)

BusyBox 1.18.1

I will use BusyBox for basic unix utilities. This has probably been compiled with far more functionality than what is currently needed, but it would be a bother to re-compile just to get that one extra utility. Currently I have included:
  • init and related utilities
  • basic file-utils and text-utils
  • every network-util
  • some filesystem-tools
The boot-sequence is very simple:
  • init starts all daemons through inittab
  • init also starts /etc/init.d/rcS which mounts filesystems and set up networking
Putting it all together

Basic directory structure:

  • /etc
  • /etc/init.d
  • /bin
  • /sbin
  • /usr
  • /usr/bin
  • /usr/sbin
  • /usr/lib
  • /lib
  • /var
  • /lib64
  • /proc
  • /dev
  • /tmp
I added the following files to /etc:
  • fstab
  • group
  • init.d/rcS
  • inittab
  • passwd
  • shadow
  • nsswitch.conf
  • resolv.conf
contents of inittab:
::sysinit:/etc/init.d/rcS
::respawn:/sbin/getty -L hvc0 9600 linux
::restart:/sbin/init
::ctrlaltdel:/sbin/reboot
::shutdown:umount -a -r

contents of rcS:

#!/bin/sh

fsck /dev/root
mount -t proc proc /proc
mount -o remount,rw /
#mount -a

hostname firewall2
ip address add dev eth0 local 192.168.32.10/24
ip link set dev eth0 up
ip route add to default via 192.168.32.1
(since everything is mounted in the rc-script, fstab is really not needed)

I put busybox in /bin and ran:

/bin/busybox --install -s
this created symlinks to all busybox commands in /bin, /sbin, /usr/bin and /usr/sbin.

Finally, I copied these libraries from an Ubuntu-installation:

/lib/libm.so.6
/lib/libc.so.6
/lib/libcrypt.so.1
/lib/libdl.so.2
/lib/libnsl.so.1
/lib/libresolv.so.2
/lib/libutil.so.1
/lib/libz.so.1
/lib/libnss_files-2.11.1.so
/lib/libnss_dns-2.11.1.so
/lib64/ld-linux-x86-64.so.2

The kernel itself is not on the guest filesystem, it is started by xen in dom0.

mandag 24. januar 2011

IPv6 at home

Ok, so it's time to get on the IPv6-bandwagon. That means:
  • setting up a firewall/router that can handle both IPv4 and IPv6
  • creating an address-policy for both protocols
  • setting up an IPv6-tunnel while waiting for my ISP to provide IPv6
For the firewall/router, I would like the following functionality:
  • DHCP for IPv4
  • Router advertisements (aka stateless autoconfiguration for IPv6, as defined in RFC 4862)
  • DNS for v4 and v6
  • 6in4 tunnel through Hurricane Electric
  • ntp-daemon for a local time-source
  • ssh for administration
  • running a linux-kernel in a xen virtual machine
  • basic linux-utilities provided by busybox
Some justifications for this setup:
  • running linux on regular hw gives more flexibility than on custom-hw (like a linksys)
  • however, I don't need much computing power for this, so a timeshare of my regular server is OK
  • Hurricane Electric seems to be the most used and easy to set up tunnel service
  • I would like to have a cliean IPv6-network internally and translate in the router, however, I have some clients that might not do IPv6 at all (like a blueray-player and the PS3), and even on regular plattforms, some features are missing (like: getting DNS-setup from the IPv6 autoconfig or even do DNS-lookups over IPv6)
  • IPv6 stateless autoconfiguration is far more elegant than DHCP. I would really like to use stateless autoconfigure for everything but servers, and set up other network parameters using DNS SRV-records or zeroconf/bonjour. But the support for this is scarce, so I'll stick with autoconfiguration for addresses and get the rest through DHCP (v4) for now. (Servers need statefull configuration anyway to have a stable IP-address independent of the network card)
So, the plan is:
  • set up a custom linux-system, running on xen
  • use busybox for providing basic utilities
  • ssh for remote login
  • use linux built in netfilter functionality to provide routing, NAT, filtering etc, configured with iptables
  • isc dhcp or dnsmasq for dhcp-functionality (dnsmasq probably has enough functionalit for IPv4, but has no DHCPv6-support. I will start with using dnsmasq for DHCP and use only stateless configuration of IPv6)
  • radvd sending router advertisement messages providing IPv6 stateless autoconfiguration.
  • dnsmasq for DNS
  • ntpd

fredag 8. januar 2010

Er vi mer enn DNA?

Dette startet med en diskusjon på fjasboka med utgangspunkt i en artikkel om Stephen Hawking. På et tidspunkt ble det aktuelt å analysere mer i detalj hva nevnte artikkel sier, det kommer her:
Although it has taken homo sapiens several million years to evolve from the apes, the useful information in our DNA, has probably changed by only a few million bits. So the rate of biological evolution in humans, Stephen Hawking points out in his Life in the Universe lecture, is about a bit a year.
Ok, dette er en observasjon, ikke noe mer å si om dette.
“By contrast,” Hawking says, “there are about 50,000 new books published in the English language each year, containing of the order of a hundred billion bits of information. Of course, the great majority of this information is garbage, and no use to any form of life. But, even so, the rate at which useful information can be added is millions, if not billions, higher than with DNA.”
Dette kan jeg også enkelt være enig i
This means Hawking says that we have entered a new phase of evolution. “At first, evolution proceeded by natural selection, from random mutations. This Darwinian phase, lasted about three and a half billion years, and produced us, beings who developed language, to exchange information.”
But what distinguishes us from our cave man ancestors is the knowledge that we have accumulated over the last ten thousand years, and particularly, Hawking points out, over the last three hundred.
“A new phase of evolution”, her faller jeg av. Her snakker han om noe annet enn biologisk evolusjon, men kaller det evolusjon, bare “en ny fase”. Jeg synes han burde ha valgt et annet begrep. Og når han sier at ”this Darwinian phase, lasted about three and a half billion years”, hva mener han egentlig her? At denne ”fasen” nå er over? Hva betyr egentlig det? At biologisk evolusjon nå har stoppet opp? Jeg tror han mener at denne andre ”intelektuelle evolusjonen” eller hva vi skal kalle den, er viktigere for menneskehetens videre utvikling enn den biologiske evolusjonen. Dette er det heller ikke noe problem å være enig i, han sparker inn åpne dører foreløpig.
”I think it is legitimate to take a broader view, and include externally transmitted information, as well as DNA, in the evolution of the human race,” Hawking said.
Dette mener jeg underbygger den tolkningen jeg ga over.
In the last ten thousand years the human species has been in what Hawking calls, “an external transmission phase,” where the internal record of information, handed down to succeeding generations in DNA, has not changed significantly. “But the external record, in books, and other long lasting forms of storage,” Hawking says, “has grown enormously. Some people would use the term, evolution, only for the internally transmitted genetic material, and would object to it being applied to information handed down externally. But I think that is too narrow a view. We are more than just our genes.”
Han snakker om to forskjellige fenomen, biologisk evolusjon av gener, samt “ekstern” akkumulering av informasjon. Det blir bare forvirrende å kalle begge to for ”evolusjon”. Og ”we are more than just our genes”, det er da ingen som påstår noe annet?
The time scale for evolution, in the external transmission period, has collapsed to about 50 years, or less.
Jeg skjønner ikke helt hva han snakker om her, men jeg tolker det slik at hvis hele evolusjonen de siste X millioner år (hvor stor er X?) skulle skjedd i samme tempo som den eksterne akkumulering av kunnskap, ville den bli komprimert til 50 år. Det er jo en interressant lek med tall for å sette ting i perspektiv, men også en grov forenkling. Biologisk evolusjon henger tett sammen med vår forståelse av begrepet ”liv”. Det blir et langt og kronglete argument hvis man skal forsøke å definere den ”eksterne” kunnskapen som ”liv”.
Meanwhile, Hawking observes, our human brains "with which we process this information have evolved only on the Darwinian time scale, of hundreds of thousands of years. This is beginning to cause problems. In the 18th century, there was said to be a man who had read every book written. But nowadays, if you read one book a day, it would take you about 15,000 years to read through the books in a national Library. By which time, many more books would have been written."
Typisk Hawking å gjøre en slik lek med tall som han synes er imponerende store, men poenget er altså at vi akkumulerer informasjon raskere enn vi klarer å tilegne oss det. Ok. Så langt i denne artikkelen har det ikke kommet frem noe som helst nytt eller oppsiktsvekkende annet enn at han bruker begrepet ”evolusjon” om to forskjellige ting: biologisk evolusjon (den tradisjonelle betydningen) og ”ekstern akkumulering av kunnskap” (ekstern som i: utenfor kroppen, i motsetning til DNA som opplagt er inne i kroppen)
But we are now entering a new phase, of what Hawking calls "self designed evolution," in which we will be able to change and improve our DNA.
Og her drar han inn et tredje begrep hvor han også bruker ordet ”evolusjon”. Dette er hva jeg ville kalt ”genmanipulering”, men la oss ikke dvele for mye ved valg av ord.
“At first,” he continues “these changes will be confined to the repair of genetic defects, like cystic fibrosis, and muscular dystrophy. These are controlled by single genes, and so are fairly easy to identify, and correct. Other qualities, such as intelligence, are probably controlled by a large number of genes. It will be much more difficult to find them, and work out the relations between them. Nevertheless, I am sure that during the next century, people will discover how to modify both intelligence, and instincts like aggression.”
Dette er hva jeg mener er “science fiction”, han snakker om hva vi potensielt kan oppnå i løpet av neste århundre. Dette er jo for så vidt interessant å diskutere, men er jo foreløpig bare spekulasjoner rundt hva som kanskje kan bli mulig en gang.
If the human race manages to redesign itself, to reduce or eliminate the risk of self-destruction, we will probably reach out to the stars and colonize other planets. But this will be done, Hawking believes, with intelligent machines based on mechanical and electronic components, rather than macromolecules, which could eventually replace DNA based life, just as DNA may have replaced an earlier form of life.
Og dette er i hvert fall sci-fi. Skal vi diskutere dette i et filosofisk perspektiv bør vi først begynne med å definere begrepet ”liv”. Skal vi diskutere praktiske, sosiale, politiske, etc konsekvenser kan vi begynne med å lese for eksempel Asimov og Clarke.

Men om vi nå tar dette seriøst og diskuterer enten konsekvensene av å manipulere egne gener eller diskutere andre former for liv, vil jo ikke dette på noen måte gjøre teorien om biologisk evolusjon mindre relevant.

Hawking definerer et slags tidsskille her, fra tiden da biologisk evolusjon var styrende for menneskehetens utvikling, til en ny tid da menneskers akkumulerte kunnskap er styrende. Dette skillet vil jeg si skjedde for flere tusen år siden. Vi må i hvert fall tilbake til starten av jordbruksrevolusjonen (forsåvidt også hva Hawking sier, "the last ten thousand years"). Dette er altså stort sett observasjoner og fakta, med et par nye (forvirrende) definisjoner av "evolusjon" og en sci-fi fremtidsvisjon.

onsdag 28. oktober 2009

November-troll

Snart tid for ny troll-i-eske på cinemateket. Jeg har litt ekstra tid om dagen, så jeg har kunnet gå gjennom listen av kommende filmer for noen måneder fremover. Det første jeg oppdager, er at filmer som falt ut av listen tidligere i høst fordi de etter opprinnelig plan hadde hatt premiere, ikke har hatt premiere ennå likevel. For eksempel er Jim Jarmusch siste film "The limits of control" (som har vært på long-listen siden mai) ennå ikke vist og derfor fortsatt aktuell. Jeg har vurdert filmer til og med januar, for etter dette er listen på filmweb uansett ikke særlig pålitelig. Men listen for februar, og spesielt mars, har mange spennende titler, så det er bare å glede seg. Forøvrig kan jeg "avsløre" en observasjon jeg har gjort når det gjelder hvordan jeg på "intuisjon" velger ut filmer til denne listen (med varierende hell, må sies). I praksis ser jeg først og fremst på bildet som filmweb har i sin liste, og for de som har et typisk cinematek-troll-film-bilde, finner jeg alltids et argument for hvorfor filmen hører hjemme i listen. Se for eksempel på listen for januar: "up in the air" ligner på en cinemateket-film, "whip it" gjør det ikke. Uansett, nok prat, til listen. Denne gangen har jeg besluttet å gjengi hele den lange listen før jeg filtrerer ut til en short-list på 5 filmer som vanlig. (På den måten kan jeg si "hva var det jeg sa", selv om jeg egentlig gjetter feil...)
  • Observe and report (USA 2008, Sandrew, ubestemt). Action-komedier er ikke klassisk troll-i-eske-materiale, men de har overrasket oss før. Utfra omtalen kan dette være i samme kategori som "hot fuzz", "pink panter" eller "confidence" som alle har vært troll tidligere.
  • Det hvite båndet (Tyskland 2009, Arthaus, 2009-12-26)
  • A serious man (USA 2009, Focus, 2009-11-06) Coen-brothers
  • Man tenker sitt (Sverige 2009, Arthaus, 2009-11-06) Drama fra en Svensk forstad, "Med et rått filmatisk uttrykk formidler den urovekkende stemninger, inspirert av poeten og filosofen Henry David Thoreau."
  • Séraphine (Frankrike 2008, Fidalgo, 2009-11-13) Fransk film om en selvlært kunstner med handling fra begynnelsen av 1900-tallet
  • Tokyo Sonata (Japan 2008, Filmoptimistene, 2009-11-13), fikk juryens spesialpris i cannes 2008
  • Pour elle (Frankrike 2008, Euforia, 2009-11-20) Thriller om skyld og konsekvenser
  • I skyggen av varmen (Sverige 2009, SF Norge, 2008-11-20). Varm kjærlighetshistorie med vanskelige undertoner.
  • Los Bastardos (Mexiuco 2008, Arthaus, 2008-11-20) Eksplosiv og provoserende film fra grensen mellom Mexico og USA
  • Klass (Estland 2007, Europafilm, 2009-11-27). Film fra en ukjent Estisk filmskaper som endelig får internasjonal distribusjon. Dette lukter det cinemateket av...
  • CasaNegra (Marokko, Europafilm, ubestemt). Marokkos kandidat til oscar for beste utenlandske film.
  • La Belle Personne (Frankrike 2008, Tour de Force, ubestemt). Romantisk komedie. Dette senker sannsynligheten for at den velges som troll, men den er fransk og har vunnet en pris og fått noen nominasjoner.
  • Stella (Frankrike 2008, Tour de Force, ubestemt). Enda en film om en lærer i Paris. "klasse og sosial tilpasning i en nyansert fortelling fra 70-tallets Paris"
  • Gyldne tider (Frankrike/Romania 2008, Tour de force, 2009-12-26). Valgt til å være med på listen utelukkende på grunn av bildet i filmweb-artikkelen...
  • Lourdes (Østerrike/Frankrike/Tyskland 2009, Fidalgo, 2009-12-26). 4 priser i Venezia, sier ikke mer...
  • New York, I love you (USA/Frankrike 2009, SF Norge, 2009-12-26). Virker som samme film som "Paris je t'aime" som var troll i 2006 (noen som husker hvilken måned?). Mange kjente navn, både på regi og spill.
  • Precious (USA 2009, ORO Film, Ubestemt). Drøssevis med priser, mer info hos imdb
  • Up in the air (USA 2009, UIP, 2010-01-15). Cinemateket liker vel Clooney
  • The lovely bones (USA 2008, UIO, 2010-01-29) Stjernespekket lag med Peter Jackson i regi-stolen. Har ikke veldig stor tro på denne, men setter den på listen for å ha nevnt den...
  • Thirst (Sør Korea 2009, Tour de force, 2010-01-29) Klassifisert i den ekstremt tydelige og velkjente genren: "Drama / Romantikk / Spenning / Sort komedie"
Dette var altså hele listen, men jeg skal også våge meg ut på glattisen og liste de 5 jeg har mest tro på:
  • the limits of control
  • lourdes
  • precious
  • los bastardos
  • det hvite båndet (selv om jeg har mest tro på at denne kommer i desember)

søndag 4. oktober 2009

Oktober-troll

Sent ute med spekulasjonene denne gangen. Jeg har heller ikke studert listen av kommende filmer så veldig nøye denne uken, men jeg har en ganske omfattende liste fra tidligere som jeg har sortert og ryddet opp i. En del filmer forsvant ut av listen denne måneden fordi de blir vist på film fra sør. Men noen andre filmer står overraskende fortsatt der, fordi de ikke fikk premiere i september likevel slik opprinnelig annonsert. Vi sitter igjen med:
  • The limits of control (USA 2009, Nordisk film, ubestemt). Siste film fra Jim Jarmush. Dette er et meget hett tips, han er godt likt på Cinemateket. Skulle opprinnelig ha premiere i september, men har ikke hatt det ennå.
  • Looking for Eric (Belgia/Storbritania/Italia/Frankrike 2009, 2009-10-16). Virker som en skikkelig europeisk film som er en lett blanding av komedie og dokumentar. (Jeg må også si at dette opprinnelig var Jens sitt tips, ikke mitt). Også vist i Haugesund i år.
  • Barn (Island, 2008, 2009-10-30) eller Foreldre (Island, 2007, 2009-10-30). En stund siden sist vi fikk en film fra Island nå. Iflg mine notater var sist "Noi Albinoi" i september 2003, og såvidt jeg husker sa Langlo noe om at dette var et undervurdert film-land det kom mye bra fra, så da er det vel på tide? Dette er en duologi (er det et ord? hva er egentlig en trilogi med bare to episoder?) som utforsker forholdet mellom barn og foreldre. Virker som typisk cinematek-mat dette.
  • A serious man (USA 2009, Focus, 2009-11-06) Coen-brødrene, sier ikke mer...
  • Man tenker sitt (Sverige 2009, Arthaus, 2009-11-06) Drama fra en Svensk forstad, "Med et rått filmatisk uttrykk formidler den urovekkende stemninger, inspirert av poeten og filosofen Henry David Thoreau."

fredag 31. juli 2009

August-troll

Ok, litt sent ute denne gangen pga ferieavvikling og vannlekkasje-styr (mer om det senere), beklager dette. Men her er altså mine spekulasjoner.

Jeg jobber stadig med å forbedre taktikken min når det gjelder å forutse kommende troll. Noen punkter jeg har prøvd å vektlegge denne gangen:

  • Erfaring fra det siste halve året viser at troll-filmene ofte har vært vist samme måned som normal kino-premiere. Altså senere enn hva jeg har inntrykk av har vært vanlig tidligere. Jeg vil derfor konsentrere meg om filmer som har premiere i august eller 4. september, før september-trollet.
  • Festivaler og premiering er alltid gode indikatorer.
  • Førpremiere brukes opplagt som en del av markedsopplegget for filmer, det er derfor mindre sannsynlig at det kommer en film som har mye eksponering i andre kanaler. For eksempel anser jeg Inglorious Basterds som en aktuell kandidat som er mindre sannsynlig fordi denne allerede får ganske mye eksponering på redaksjonell plass i flere medier. (Men det at Cinemateket har valgt å vise den italienske originalen i august-programmet sitt øker sannsynligheten, dette virker som en film de har sansen for).
  • Jeg har ikke akkurat noe belegg for dette, men jeg antar de vil prøve å fordele filmer geografisk og ikke vise mer amerikansk film enn hva som er rimelig i forhold til hvor stor andel av kinofilmer som kommer fra USA. Nå synes jeg det er lenge siden vi har sett en norsk film (Rovdyr, desember-07). Det er tre norske filmer på trappene de kommende to månedene, og alle virker noe aktuelle som troll.
  • Distribusjonsselskap: det er oftere vi ser filmer fra små selskap som Focus eller Arthaus, som både kan komme av hvilke filmer disse typisk selger, men også fordi troll-i-eske sannsynligvis er en veldig rimelig markedsføringskanal.
Altså, basert på dette anser jeg følgende kandidater som aktuelle denne søndagen:
  • The limits of control (USA 2009, Nordisk film, 2009-09-25), de forrige to Jarmusch-filmene var troll (Coffee and Cigarettes, 2003, og Broken Flowers, 2005), det ville nesten overraske meg om denne ikke denne kommer. Men de har jo en måned til på seg...
  • Inglourious Basterds (USA 2009, 2009-08-21), Tarantino beskriver 2. verdenskrig. Jeg har vel egentlig ikke så veldig stor tro på denne, men de liker jo Tarantino, så vidt jeg vet.
  • I skyggen av varmen (Sverige 2009, SF Norge, 2008-08-14). Varm kjærlighetshistorie med vanskelige undertoner.
  • Gigante (Nederland mfl 2009, Fidalgo, 2009-08-28) FilmMagasinet gir 5 stjerner og sier: "Dette er et deilig lite stykke film som på stillferdig og enkelt vis beskriver den gryende avstandsforelskelsen som alle en gang har opplevd. ..Filmen stakk av med Sølvbjørnen på årets filmfestival i Berlin. Og det er vel fortjent. Et kjøpesenter har nemlig aldri vært mer romantisk enn dette."
  • My sisters keeper (USA 2009, SF Norge, 2009-09-04). Film om en 16-åring med laukemi som har overlevd pga lillesøsteren som er den ideelle medisinske donor. Dette kan enten være en klissete feelgood-historie, eller et kritisk og problematiserende blikk på en meget aktuell debatt. Omtalen tyder på det sistnevnte.
  • Upperdog (Norge 2009, Sandrew, 2009-08-28). Kompleks skildring av norsk samtid.
En film som dessverre har falt ut av listen er Wolke 9, denne hadde førpremiere 14. juli (noe som forøvrig ble annonsert allerede for en måned siden, smekk på fingrene til meg for at jeg ikke oppdaget dette tidligere...)

Den våkne leser vil oppdage at jeg denne gangen har 6 kandidater og ikke 5. Av disse er "Limits of control" den eneste som kan vente en måned, men den kan jo komme denne måneden også, så jeg tør ikke fjerne den. (For å komme med litt kvasi-sannsynlighetsregning anser jeg det som 90% sikkert at den kommer i august eller september...). Av de 5 andre er nok Inglorious Basterds den jeg har minst tro på, så skulle jeg fjerne en, måtte det være den, men jeg velger heller å bryte strukturen for en gangs skyld...

onsdag 1. juli 2009

Juli-troll

Det er to filmer jeg i lang tid har regnet med vil komme som troll i eske. Den første er "wolke 9" som fikk rosende omtale i media i forbindelse med Tromsø filmfestival. Den blir dessuten distribuert av Arthaus i Norge, og som vi vet blir de fleste Arthaus-filmer vist som troll. Denne har premiere 7. august, så dette er sannsynligvis siste mulighet for Cinemateket å sette opp denne. (Ja, 2. august er også et alternativ, men det hører virkelig til skjeldenhetene at de setter opp filmer som har normal premiere om bare 5 dager...)

Den andre er jeg enda mer sikker på, det er "The limits of control", som er Jim Jarmush' siste film (hva blir forresten korrekt genitiv av dette etternavnet?). De forrige to filmene hans "Broken flowers" og "Coffee and cigarettes" har begge vært vist som troll i eske (tenk: "i dag skal vi vise en film av en regissør vi er veldig glad i her på Cinemateket..."). Denne filmen har vært satt opp med premiere 25. september, slik at denne også kan komme både i august og september. Imidlertid er den ikke lenger i "kommende..."-listen hos filmweb, og Nordisk filmdistribusjon, som er satt opp som distributør, har den heller ikke i sin liste. I resten av verden (eller, i det minste i USA) er det Focus features som distribuerer, noe som også er en slags indikasjon for troll i eske, det er ganske ofte deres filmer vises der.

Andre kandidater:

  • I skyggen av varmen (Sverige 2009). Varm kjærlighetshistorie med vanskelige undertoner.
  • Barn (Island, 2008) eller Foreldre (Island, 2007). En stund siden sist vi fikk en film fra Island nå. Iflg mine notater var sist "Noi Albinoi" i september 2003, og såvidt jeg husker sa Langlo noe om at dette var et undervurdert film-land det kom mye bra fra, så da er det vel på tide? Dette er en duologi (er det et ord? hva er egentlig en trilogi med bare to episoder?) som utforsker forholdet mellom barn og foreldre.
  • Klass (Estland 2007). Film fra en ukjent Estisk filmskaper som endelig får internasjonal distribusjon. Dette lukter det cinemateket av...

onsdag 3. juni 2009

Juni-troll

Nå har jeg kommet dit at jeg i praksis vedlikeholder en liste fra gang til gang. Ut av listen siden sist er:
  • Antichrist (har premiere fredagen før trollet)
Jeg anser også "drag me to hell" og "crossing over" som lite sannsynlige, i og med at de har premiere i juni, og de pleier å ligge minst en måned på forskudd (men forrige måned var jo et godt eksempel på det motsatte). En liten digresjon om Antichrist: jeg har lyst til å se denne, gjerne allerede fredag. Om noen vil være med så gi beskjed. Et par advarsler er på sin plass:
Noe mer grusomt enn dette får du aldri se
- Dagbladets reporter i Cannes
Jeg vil jo si at det ikke er alle som skal se «Antichrist», for det er ikke en film som passer for alle
- Filmsjef i Oslo Kino, Christin Berg
Alle som vil se denne filmen er klar over hva de går til. De er klar over at Von Trier provoserer og har ganske sterke virkemidler. Etter all sannsynlighet vil filmen få 18-års grense, og vi vil fortelle publikummet vårt hva dette er for noe, sier Akselsen til Dagbladet.
- Direktør Egil Akselsen ved Trondheim Kino
Så tilbake til søndagens troll: Inn igjen på listen fra tidligere:
  • Fuglekikkere (Spania/Italia 2008), "Tankevekkende drama om urbefolkningens kamp i Brasil", distribuert av Arthaus
Nye på listen:
  • Coco Chanel & Igor Stravinsky (Frankrike 2009, Oro film)
  • Snarveien (Norge 2009), norsk skrekkfilm som har fått ekstra støtte for å lanseres i sommerferien. Det kan jo hende de lanseringsplanene inkluderer en før-premiere, og det pleier jo å være en skrekkfilm om sommeren.
  • Coco før chanel (Frankrike 2009, SF Norge), to filmer om Coco med en måneds mellomrom, hva er dette? Denne er med Audrey Tatou (Amelie) i hovedrollen, som jeg kan tenke meg er en skuespiller Cinemateket liker.
  • Inglourious Basterds (USA 2009), Tarantino beskriver 2. verdenskrig. Jeg har vel egentlig ikke så veldig stor tro på denne, men de liker jo Tarantino, så vidt jeg vet.
  • Broken Embraces (Los abrazos rotos, Spania 2009), thriller fra Almadovar. Han er vel heller ikke en "ny og kommende" regissør lenger, så jeg har nok ikke så stor tro på denne heller.
  • Solisten (USA 2009) "i kveld skal vi få se en varm og nær film av en regissør vi er veldig glad i her på cinemateket" (altså, det vet jeg ikke, men det ville ikke overraske meg).
  • Klass (Estland 2007). Film fra en ukjent Estisk filmskaper som endelig får internasjonal distribusjon. Dette lukter det cinemateket av...
  • Sorgens melk (Peru 2009). Borgerkrig, traumer, indre og ytre konflikter, konfrontasjon og transformasjon. Dette er typisk troll-mat.
  • Looking for Eric (Belgia/Storbritania/Italia/Frankrike 2009). Tilslutt et forslag fra Jens. Virker som en skikkelig europeisk film som er en lett blanding av komedie og dokumentar. En god kandidat, men har ikke premiere før i oktober, så jeg tror ikke den er aktuell riktig ennå.
  • Det hvite båndet, Michael Hanekes gullpalmevinner fra Cannes i år. For å sitere Arthaus selv: "Dette er tredje året på rad at Arthaus kjøper filmen som vinner Gullpalmen før prisutdelingen. I 2007 var det 4 MÅNEDER, 3 UKER OG 2 DAGER og i 2008 den franske KLASSEN. DET HVITE BÅNDET føyer seg perfekt inn i denne rekken av fenomenal kvalitetsfilm fra Europa." Erfaringen fra de to foregående årene er at gullpalmevinneren kommer som Troll-i-eske i november-desember.
For å oppsummere, disse har jeg mest tro på for juni-trollet:
  • Wolke 9 (Wolke 9, Tyskland 2008, Arthaus)
  • The limits of control (USA 2009, Nordisk film)
  • Sin Nombre (Mexico 2009, Focus)
  • Snarveien (Norge 2009)
  • Fuglekikkere (Spania/Italia 2008, Arthaus)