To answer my own question: Its not an issue of the dictionaries, but of the string literals. @"obj1" always gives the same ID. To solve this problem, I have to setup the dictionary by:
NSDictionary *myDict = @{@"key1": [NSMutableString stringWithFormat:@"%@",@"obj1"], @"key2": [NSMutableString stringWithFormat:@"%@",@"obj1"], @"key3" : @"x"};
Note that "NSMutableString"! You will need mutable objects.