Etikettarkiv: internet

The World Sized Robot

I felt this needed to be shared with a broader audience. It may not be news to everybody but far from enough people understands we are just on the verge of something large happening.

We are building a world sized robot

Bruce Schneier writes in his latest CRYPTO-GRAM about something that has been bothering some people for a while as the implications are yet an undiscovered country. But his words are better than mine, so here goes:

We no longer have things with computers embedded in them. We have computers with things attached to them.

Your modern refrigerator is a computer that keeps things cold. Your oven, similarly, is a computer that makes things hot. An ATM is a computer with money inside. Your car is no longer a mechanical device with some computers inside; it’s a computer with four wheels and an engine. Actually, it’s a distributed system of over 100 computers with four wheels and an engine. And, of course, your phones became full-power general-purpose computers in 2007, when the iPhone was introduced.

We wear computers: fitness trackers and computer-enabled medical devices — and, of course, we carry our smartphones everywhere. Our homes have smart thermostats, smart appliances, smart door locks, even smart light bulbs. At work, many of those same smart devices are networked together with CCTV cameras, sensors that detect customer movements, and everything else. Cities are starting to embed smart sensors in roads, streetlights, and sidewalk squares, also smart energy grids and smart transportation networks. A nuclear power plant is really just a computer that produces electricity, and — like everything else we’ve just listed — it’s on the Internet.

The Internet is no longer a web that we connect to. Instead, it’s a computerized, networked, and interconnected world that we live in. This is the future, and what we’re calling the Internet of Things.

Broadly speaking, the Internet of Things has three parts. There are the sensors that collect data about us and our environment: smart thermostats, street and highway sensors, and those ubiquitous smartphones with their motion sensors and GPS location receivers. Then there are the ”smarts” that figure out what the data means and what to do about it. This includes all the computer processors on these devices and — increasingly — in the cloud, as well as the memory that stores all of this information. And finally, there are the actuators that affect our environment. The point of a smart thermostat isn’t to record the temperature; it’s to control the furnace and the air conditioner. Driverless cars collect data about the road and the environment to steer themselves safely to their destinations.

You can think of the sensors as the eyes and ears of the Internet. You can think of the actuators as the hands and feet of the Internet. And you can think of the stuff in the middle as the brain. We are building an Internet that senses, thinks, and acts.

This is the classic definition of a robot. We’re building a world-size robot, and we don’t even realize it.

To be sure, it’s not a robot in the classical sense. We think of robots as discrete autonomous entities, with sensors, brain, and actuators all together in a metal shell. The world-size robot is distributed. It doesn’t have a singular body, and parts of it are controlled in different ways by different people. It doesn’t have a central brain, and it has nothing even remotely resembling a consciousness. It doesn’t have a single goal or focus. It’s not even something we deliberately designed. It’s something we have inadvertently built out of the everyday objects we live with and take for granted. It is the extension of our computers and networks into the real world.

This world-size robot is actually more than the Internet of Things. It’s a combination of several decades-old computing trends: mobile computing, cloud computing, always-on computing, huge databases of personal information, the Internet of Things — or, more precisely, cyber-physical systems — autonomy, and artificial intelligence. And while it’s still not very smart, it’ll get smarter. It’ll get more powerful and more capable through all the interconnections we’re building.

It’ll also get much more dangerous.

— Bruce Schneier, cryptographer and computer security expert and educator, from his news letter CRYPTO-GRAM of february 15, 2017.

Ubuntu persistent network interface names

In Ubuntu 16.x the systemd is used more than in the previous versions. This also means it is now responsible for setting up your network cards. Many people have been sort of surprised that their eth0 have changed to something like enp0s25. This is of course an improvement from before, there was no real telling in which order NICs would be assigned names so potentially a hardware change could offset eth0 and eth1 and so on.

The new way is actually not too bad but if you like me do a lot of manual configurations on the fly to the network interfaces their names can be tedious to type and also remember. But of course there is a rather simple mechanism to change this so you can select your own names for the interfaces such as lan0 and dmz1 or why not wifi plain and simple if there is never to be any more than one wifi card in the computer.

This is a step-by step guide that was tested under Ubuntu 16.10 and worked for me. Please leave your comments if you have problems, improvements or any such things to add.

Getting the names

First of all we need to find out what the names of the NICs we have in the system actually are. Here is a dump from my laptop using the ifconfig command to list all interfaces:

root@kraken:~# ifconfig -a
enp0s25: flags=4098<BROADCAST,MULTICAST> mtu 1500
 ether f0:de:f1:8d:89:fe txqueuelen 1000 (Ethernet)
 RX packets 0 bytes 0 (0.0 B)
 RX errors 0 dropped 0 overruns 0 frame 0
 TX packets 0 bytes 0 (0.0 B)
 TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
 device interrupt 20 memory 0xf2a00000-f2a20000

lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
 inet 127.0.0.1 netmask 255.0.0.0
 inet6 ::1 prefixlen 128 scopeid 0x10<host>
 loop txqueuelen 1 (Local Loopback)
 RX packets 3143 bytes 204307 (204.3 KB)
 RX errors 0 dropped 0 overruns 0 frame 0
 TX packets 3143 bytes 204307 (204.3 KB)
 TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

wlp3s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
 inet 192.168.1.3 netmask 255.255.255.0 broadcast 192.168.1.255
 inet6 fe80::846f:cc3d:2984:d240 prefixlen 64 scopeid 0x20<link>
 ether 00:24:d7:f0:a3:a4 txqueuelen 1000 (Ethernet)
 RX packets 4600 bytes 5069857 (5.0 MB)
 RX errors 0 dropped 0 overruns 0 frame 0
 TX packets 3348 bytes 592050 (592.0 KB)
 TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

wwp0s29u1u4i6: flags=4098<BROADCAST,MULTICAST> mtu 1500
 ether 02:80:37:ec:02:00 txqueuelen 1000 (Ethernet)
 RX packets 0 bytes 0 (0.0 B)
 RX errors 0 dropped 0 overruns 0 frame 0
 TX packets 0 bytes 0 (0.0 B)
 TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

We are looking for two things in the above, the MAC address and the name of the network interface card we want to rename. The NICs we have here are named after the type of card, the bus it is attached to etc. What used to be called eth0 is now referred to as enp0s25 and wlan0 is wlp3s0 and there is also a WAN card in the machine called wwp0s29u1u4i6 which definitely is a mouthful.

Okay, so we would like to rename these to more sensible names. First we pick the names such as eth0, wlan0, wan0 etc. Then we note down the MAC address of each card. You find this highlighted in red in the above dump next to the keywork ”ether”. Once we have that we can tell the systemd to rename the cards in the way we want. By connecting the name to the MAC address it should also be persistent and not affected by inserting a new card into the computer system.

In directory /etc/systemd/network we will create the following files:

root@kraken:/etc/systemd/network# ll
 total 20
 drwxr-xr-x 2 root root 4096 Dec 11 04:28 ./
 drwxr-xr-x 5 root root 4096 Nov 24 15:03 ../
 -rw-r--r-- 1 root root 55 Dec 6 23:44 01-eth0.link
 -rw-r--r-- 1 root root 56 Dec 6 23:39 02-wifi.link
 -rw-r--r-- 1 root root 55 Dec 6 23:40 03-wan.link

These link files can be used to match a device and then change its parameters. So they consists of a matching section and then a link section. The first one called 01-eth0.link contains the following lines:

[Match]
  MACAddress=f0:de:f1:8d:89:fe

[Link]
  Name=eth0

We can then create the other ones in the same way. When we are done with that we need to do two things. First we need to update the initial ram file system in boot because some of these may already be up during boot time (such as eth0). This is done with the following command:

root@kraken:/etc/systemd/network# update-initramfs -u
 update-initramfs: Generating /boot/initrd.img-4.8.0-30-generic
 W: Possible missing firmware /lib/firmware/i915/kbl_guc_ver9_14.bin for module i915
 W: Possible missing firmware /lib/firmware/i915/bxt_guc_ver8_7.bin for module i915
 W: mdadm: /etc/mdadm/mdadm.conf defines no arrays.

Once we have done this we can reboot our computer.

When up again we can check the network names again:

anders@kraken:~$ ifconfig -a
eth0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
 ether f0:de:f1:8d:89:fe txqueuelen 1000 (Ethernet)
 RX packets 0 bytes 0 (0.0 B)
 RX errors 0 dropped 0 overruns 0 frame 0
 TX packets 0 bytes 0 (0.0 B)
 TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
 device interrupt 20 memory 0xf2a00000-f2a20000

lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
 inet 127.0.0.1 netmask 255.0.0.0
 inet6 ::1 prefixlen 128 scopeid 0x10<host>
 loop txqueuelen 1 (Local Loopback)
 RX packets 1732 bytes 110296 (110.2 KB)
 RX errors 0 dropped 0 overruns 0 frame 0
 TX packets 1732 bytes 110296 (110.2 KB)
 TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

wan0: flags=4098<BROADCAST,MULTICAST> mtu 1500
 ether 02:80:37:ec:02:00 txqueuelen 1000 (Ethernet)
 RX packets 0 bytes 0 (0.0 B)
 RX errors 0 dropped 0 overruns 0 frame 0
 TX packets 0 bytes 0 (0.0 B)
 TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
 inet 192.168.1.3 netmask 255.255.255.0 broadcast 192.168.1.255
 inet6 fe80::1ed7:d5ac:433d:70c5 prefixlen 64 scopeid 0x20<link>
 ether 00:24:d7:f0:a3:a4 txqueuelen 1000 (Ethernet)
 RX packets 93 bytes 71048 (71.0 KB)
 RX errors 0 dropped 0 overruns 0 frame 0
 TX packets 137 bytes 18113 (18.1 KB)
 TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

As you can see we now have eth0, wlan0 and wan0 instead of the default names. So if you like me work from the command line mainly you will be happy that ifconfig eth0 now works just like it did before the systemd entered the scene and if you have firewall scripts you can of course rename your interface to something that is useful to you such as lan, wan and dmz or whatever makes sense.

Google Mail and Calendar offline apps for Chrome

Google is now launching an offline GMail version that runs like an app inside the Chrome web browser. This is exactly what I have been looking for and I find less and less reason to hold on to my Thunderbird installation.

This is also true for the Google Calendar application, same here, they have used the same technology as on the android platform to create this and sure enough, it looks very similar.

Since the Chrome browser has a very capable built-in database to handle things like that, the off line applications has been something I have looked forward to for a long time.

Excellent!

EasyTether for Android

Fantastic application. Connect your mobile with the USB cable to your laptop, install driver and EasyTether program on your mobile and use your mobile as a mobile broadband internet connection while you are charging your phone!

This is a fantastic development, when I got my Android phone I missed that kind of application and there was some hacks that could be used but nothing that worked this good.

It does not require a root:ed phone, it just works. The software will soon cost a few bucks but it is well worth it if you want to be able to use your phone as a gateway to the internet.

It also uses the phones built-in firewalling capabilities protecting your laptop from attacks from the outside by filtering various protocols. You might even filter UDP ports (except DNS requests) if you like.

(links are coming)

Google Buzz

I have just tried out Google Buzz, a twitter-like service from Google which is available through Google Mail right now. Clients are expected for mobile phones of various makes soon.

I like the concept although it’s not as innovative as twitter was when it came it is still a really good implementation of a social microblogging feature. That Google saves it in ”conversations” just like email threads is what makes it great. Even people you are not following are included in the conversations so they are quite complete and nice.

It integrates with many google services and Flickr, Twitter, Facebook and so on and your own web side if you have an RSS feed from it, therefore I think it is a great integrator of what you are doing.

People have however raised concerns over that if you join the service then anyone following are able to see the email addresses you routinely email with. I am not too concerned about this but you might want to think through this before joining.

A Spotify Journey into EBM

Electronic Body Music groups: The Cassandra Complex, Die Krupps, Melotron, A Split Second, Front Line Assembly, Front 242, à;GRUMH, Nitzer Ebb, Skinny Puppy, Laibach, Cat Rapes Dog, DAF, Einstürzende Neubauten, Depeche Mode…

These are for me the most prominent EBM bands I was listening to in high-school and later and still comes back to now and then. Now thanks to spotify I can share a link with Ichimusais Essential EBM where you can listen to some of these ground breaking bands greatest…

Here is your essential guide to Electronic Body Music.

Spotify EBM Tour by Ichimusai

Enjoy on your way to work or just if you are suffering from insomnia for some reason…

Spam free WordPress

Due to the insane amount of spambots sending comments to my site lately I have decided to fight back. Therefore I have installed the WP-Spamfree plugin which I think is one of the most formidable anti-spam plugins.

Without the hassle of trying to guess words on hard to read images to fill them in this plugin uses a combination of java-script and cookies to determine weither you are a spam bot or not.

Let’s see how it works!

ICA-Jerry blir Facebookad

ICA-Jerry spelad av Mats Melin
ICA-Jerry spelad av Mats Melin

Har ni sett ICA-reklamen? ICA-Jerry är det senaste tillskottet till gänget på den något galna ICA-butiken som leds av Stig och hans mer eller mindre kloka medarbetare.

Gänget har fått en praktikant Jerry som är lite udda i gänget.

ICA-Jerry spelas av Mats Melin och har slagit igenom i Sverige med bravur. Hans skådespel är det då inget fel på. I en intervju som gjorts med honom beskriver han hur han vill bli stuntman. Jerry, förlåt Mats, spelar också gangster i Glada Hudik-teaterns föreställning Elvis. Här är hela intervjun med Mats i tidningen FUB (För barn, unga och vuxna med utvecklingsstörning).

Denna praktikant har gjort storsuccee på Facebook och flera grupper har skapats för honom.
ICA-Jerry och Vi som vill att ICA-Jerry följer sin dröm och blir stuntman.

På bara några dagar har hundratusentals människor gått med i dessa grupper som ”fans”.

Jag gillar’t!

FRA-spaning skjuts upp

fra

Riksdagens borgerliga majoritet har beslutat att skjuta upp starten för FRA:s kabelsignalspaning med 2 månader till den 1:a december i år.  Skälet anges vara att regeringens arbete med att göra kompletteringar till signalspaningslagen för att förbättra rättssäkerheten har dragit ut på tiden.

Från den första december måste dock teleoperatörerna föra över all trafik till särskilda knutpunkter där den kan bearbetas statistiskt och lagras för efteranalys.

För kommunikation som man inte önskar alla skall kunna läsa på vägen rekommenderas att titta på programpaketet gpg4win som gör det möjligt att kryptera all kommunikation över email med mera. Stark kryptografi är ett mycket användbart medel för att skydda den personliga integriteten och ju fler som bestämmer sig för att börja använda det rutinmässigt desto mindre konstigt och svårare blir det att utföra statistisk analys för de som skall övervaka oss.

Passa på innan det beslutas om att det skall bli olagligt att använda kryptering för personligt bruk!

Mina nycklar hittar du här.

Datalagringsdirektivet – Bodströms arv

I princip innebär förslaget att alla telekomoperatörer måste spara uppgifter om vem som gjort vad och kommunicerat med vem i minst 6 månaders tid.  Efter domen mot Pirate Bay har flera operatörer tagit många marknadsandelar genom att meddela att man inte lagrar uppgifter längre än absolut nödvändigt för att kunna sköta sin egen verksamhet.

Det blir nu slut med det. Regeringen antog i går en lagrådsremiss som innebär att telekomföretagen i enlighet med det europeiska datalagringsdirektivet måste spara sådana uppgifter i minst sex månader. Det har höjts röster mot den radering av uppgifter som vissa telekombolag utfört – inte mist från polisen som är rädd för att de skall bli utan möjlighet att använda uppgifterna i brottsbekämpningssyfte.

Det föreslås i lagrådsremissen att även misslyckade uppringningar och obsesvarade samtal skall lagras, på samma sätt skall även positionen för en mobiltelefon under hela samtalet, inte bara där det påbörjades, lagras. Denna lagrådsremiss är ett arbete som påbörjades av Thomas Bodström (S) inom EU för flera år sedan och har nu kommit i kapp oss, lagom till andra nya lagar som FRA-lagen, IPRED, domen mot The Pirate Bay-folket och är en kugge i en rad åtgärder som görs för att stärka inte minst skivbolagens ställning på marknaden.

Efter lagrådsremissen kommer en proposition som väntas antas i juni månad. Förmodligen blir lagen tvingande till hösten.

Do you want to know more? »