2011/11/30

Alba's Director vacancy

Today the Alba's director has sent an email to all staff. In this email he had announced that he is leaving the director's position. Is also written in this email that this has been plan, by him, due to the enter in operation. But, as far as the first users will arrive later Easter, this announcement doesn't mach.


We are still in commissioning, and the maximum current accumulated in the storage ring is 200mA. We are still working hard and doing our best to have the machine up and running at 400mA, the design and expected accumulated current. Some of the problems of this institution didn't have relation with synchrotron business. Not only the salary cut, or disguise Experiments head firing. But many that I have not dared to write because I was afraid of the personal consequences. And I still have my doubts to write it.


It's fun that the email sent to all staff say thanks to most of the stuff for the work well done. Not to all the staff, only for a subgroup. Perhaps this subgroup is the people that has been invited today in a farewell that has take place today in a meeting room with the window blinds down. 


After this vip farewell, some people who was there, explains that the candidate to new director have rejected the offer. But this is a rumor. Rumors... Alba lives in rumors we are not use to official announcements. The thing of that we had a new director candidate, is a rumor; the thing that there was a previous candidate who rejects the position some months a go, is a rumor; the thing that the management board doesn't have a meeting since 3 years, is a rumor. Do I have to continue? I feel really sad about how the things was done. But I still have the hope that the issue about our management will be fix, and we will be able to focus in usual problems (engineering, scientific,...) of one research facility.

2011/11/29

New milestone reached: 200mA in the storage ring

Yesterday, 28 of November, about 19h local time, the storage ring of Alba have reached a new record in the accumulated beam: 200mA. (machine is design to work at 400 mA)


Photo of one of the screens in the Alba's place with the machine status


The head of the accelerators division have send an email to all the stuff in Alba, thanking all of us and saying that this is not only a success of Accelerators Division, it's a success of all the Alba's team and we like to share this milestone with all of us.


Photo taken the 26 of Nov, from the EC-JQK


This kind of small details contribute to the behaviour of the Alba's workers. Small things that made easy the live, and encourages to do more. It's the base of the workers the ones who are doing this. Even the dangers that one can find in the corridors.


Also I like to mention that yesterday I have reach one of my goals having a cycling of all the magnets of the storage ring with out any of them failing. I still have some problems with the setpoint on this power converters, but they are reduced from the 15% (when I have take the project) to the current 0'1% error rate. But I still like to reduce this to 0%. The device must be the last responsible to apply a setpoint. If the user tells the device, it has to insist until exhaust and it's not easy to leave a process exhaust.


Trend with all the storage ring magnets cycled

2011/11/24

Alba's Call for Proposals for 2012 Beamtime Allocation

With an email to the AUSE mail list, I have receive the news about the Alba's user office: The call for proposals is open!


Now we are in commissioning and it goes very well and fast. We are reaching many goals each week. Afaik, at the beginning of next year we will have the friendly users: a very patient scientist who will do real experiments knowing that they are doing it in side the commissioning.

In the header of the Alba's user office, there is a tab labelled "call for proposals 2012". I cannot put a link to this due to a "season id", but I can snapshot it:


The only way to submit proposals will be this site of the user office. Create a user there is mandatory to be able to submit. Before that, is said that can be good to contact the scientist of the beamline if you have special requirements. I think this would be better to be included in the proposal and evaluated by who will have to develop it, to know who long is need to allocate this beamtime in a reasonable date.


The start-up of the beamlines will be gradual after Easter, but before come to Alba to do the experiment in the allocated beamtime, the user's must complain with the Safety Requirements:




It will be fun this thing about the exam, because after many years working where I never did an exam about Safety. He have received some trainings about Safety, but never checked the knowledge assimilated in this training.


We will see. If there is any reader who likes to come to Alba to do experiments, now it's time to do the paper work! Good luck!



2011/11/07

Generalized Rijndael, an approach

Following the idea of the first post about a Generalized Rijndael, I have started an implementation with some constants of the standard implementations becomes variables.

An schematic for the Rijndael would be:


This operations uses a state matrix, it's the data structure who receives the transformations during the (de)cipher process. This state matrix, in the AES, contains words of 8 bits in a 4x4.

First of all the input (of 128 bits) is cut in this basic words of 8 bits:



There are two ways to modify the size of the input: change the size of the matrix or change the size of the word. Following the article Small Scale Variants of the AES, the two options to reduce the input size from 128 to 32 bits under a Rijndael model:
  • Reduce the state matrix to 2x2 (in the AES is 4x4)
  • Reduce the word size to 2 bits (in the AES is 8 bits)
But, what's the best way? And there is another question, how big would be the key?

In the AES there are 3 options: 128, 192, 256 bits:


This matrix will be the input of a keyExpansion() function to have the segments of this key to be used in each part of the rounds. 

Why this sizes? Like many of the times, the choice of this 3 sizes corresponds to standardisation reasons like set a small but enough number of them to choose. The original Rijndael supports much more options: you can set a key of 512 bits and structure it into 16 columns in the key matrix. Even 1024 bits key, with 32 columns, the key expanded will still be 44 elements if the number of rows and the number of rounds are still the same.

Furthermore, with a 128 bits block of plain text and key (matrix 4x4 and word size 8) there would be 40 rounds instead of 10. In this case the key expansion will have 164 elements instead of the 44 of the standard. (the number of elements in the key expansion is #columns*#rounds) 

But how to define this parameters in the good direction? Can be the number of rounds be less with in a safety way? Or can some day be necessary to increase this number?

The Rijndael have a good performance over 32 bit hardware. The word size of 8 bits together with the 4 rows who gives 32 bit operation in the ring: But in deep, the most powerfull feature of the Rijndael from the computation point of view is that it works in the very basic and that means binary.

I hope I'll write soon answering this questions.

Generalization of Rijndael, an introduction

Long time a go I have received a request to prepare a system to encode some data in barcodes. I thought in two options: symmetric cryptography or hash algorithm. But, there where two requirements: "non collision (in between the same key)" and "recover information from the code". Then the choose is made, they can only complained by the symmetric algorithms.

The first symmetric algorithm was to simply operate with an xor operation. But this, as a Vernam type algorithm, is more to a stream ciphering or a one-time pad. Basically means is not the correct algorithm if a key is used more than one time.

To think in the block symmetric algorithms, the old DES, the new AES or any of the finalists in the trial are candidates. I have decided for the Rijndael, the winner of the AES contest. Usually the input/output size on the symmetric algorithms must be as big as possible because the data to cipher is much bigger. For example, in the implementations of the public key cryptosystems is usual to do a hybrid system, and the data is very big. Usually the problem on the symmetrics is to interlace the blocks to avoid patterns between them.

One of the goodness of the Rijndael is the capacity of extension, bigger of smaller. The state matrix, in the standard is 4x4, but the number of rows and columns can be changed. Even more, they can be different between them. The word size, is 8 bits (having operations in 32 bits because 8 bits * 4 elements in a column), but it's possible to do Rijndael with different word sizes.

In the application about I'm working the block size will be below 128 bits, but is not fix having the idea of 64 bits block size. DES is 64 bits block (54 bits effective key size). But why to use a replaced algorithm having the possibility to adapt the Rijndael? Even more, with Rijndael the key size can be also adapted to the needs. But in crypto, any modification must have a previous process of deep think, and a post-process of forever-think.

The Triple-DES was an extension to make bigger the key sizes like 112 or 168 (56 plus 2 or 3 of the simple-DES), and there is an extension for the AES with the name AESWrap (the rfc3394), what can be thing like a sextuple-AES.

There is a difference between DES and AES, and between Triple-DES and the AESWrap. The Rijndael is not only using the key, is also doing an expansion of this key to have more bits as a key. Furthermore, the AESWrap is doing a key derivation function to introduce more dispersion and confusion.

Lets go in the first step of this project: A Generalization of Rijndael to have the data block size parametrizable, also the key size and the number of rounds.

Lets start from the simplification, how to do an Small Rijndael Variant? I have found two articles very helpful on that task:

One book for cryptography developers:
And the mandatory books for Rijndael: