[google-appengine] Re: Are blob keys guessable?

2015-09-28 Thread Ryan (Cloud Platform Support)
Salutations Rob

"The Blobstore value is assigned a unique, randomly generated key." [1]

The book was written by a Googler and is a good read.

[1] http://ae-book.appspot.com/chapters/blobstore

On Sunday, September 27, 2015 at 3:23:50 PM UTC-4, Rob Curtis wrote:
>
> Hi, 
>
> I can't find any information on this in the documentation;
> Are blob keys guessable? 
> Is it safe to expose stringified blob key to a user?
>
> Thanks
> Rob
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-appengine+unsubscr...@googlegroups.com.
To post to this group, send email to google-appengine@googlegroups.com.
Visit this group at http://groups.google.com/group/google-appengine.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-appengine/f5615b93-9c7d-4494-bf4e-17bc4e72f242%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[google-appengine] Re: Are blob keys guessable?

2015-09-29 Thread Ryan (Cloud Platform Support)
I can't speak to how the keys are generated but take a look at the bellow 
keys. They are all the same file uploaded with the same code within a few 
moments of each other. They are unique enough it would take a bruit force 
attack to find a key that could be used:

AMIfv951k5FTlQxC-6nljafbiyiRJvWkcVhbuCbBvFcSu6cuf_IV2x1f_OIhkQ-Q1OnPp0HN6hKKbXMS4S_C3dgt5zGhQcWKHOZy2ALjOXVr20o9PhPWT8Wmbu4oxJU7gmAXfVQtttYBheQvpJFbOkH_qnilNdWmh_UYNiZjy_O9ioV_SJnH-PM

AMIfv954myPMnDkCeYlHSMUj2noCiBqD-BtaxwZw7Raf_LGg62IOlgOK44PpysRDX5BWEQE5NfzvtS-xVV4BL9kh1eH2lx7l5fWQWJSEQR8vL8JCAOq12A2LuzvUdLK3e9jwXNwx7UCVI1EeUipVXUvABT9tauNJ_DRBBlL8bqNE99QzfXijCFQ

AMIfv97UzePJVVqYjnxkAf5d_-tG88gzxp9DcttAeUdZ10NUpMTVmYG2QttDDOSNzztFzHVnRa4rcy-BWeLlN9ZRZzEEXI2TXWUIxn1tzwW_QgYSJP60YWb5bt_khIPnUAWIbij-FQEdMycGDada_it6WoPky5hCS0cjVtAJ4tr2p7NuRxIo2_c

AMIfv97MrdriwZpoTkLGxc2sEFwfXIMXwz7Dt3f7IH9Iljb9S57f6amI8ZB8H70VwfkLVOnPvhoDNW7iyTUhiqtafSsFu7L6w3U_qxqzaGJNez8XGLLYeZCwBUWRre-6eeodyTzzohB7zgrEvTp4j9B1K99HU5Secp2cZNW0VW4i9co-o352eqw

AMIfv95anW6Qio_APu5La6ZBAs9ZUvaXcO5x8JeN0CW0knMnLtCFSWiAFe0laElTfbguW71WPO7UpKtFK_ijUTSNOgvT6w2T-0YWKawlHaBvyVnDFRZAcdsbGdIeBAcQOnXsJ6D_dDkKLBi73SHTIXB9LTr_oZUbpVOxiLHQOZa8h58ubozYu0E

On Sunday, September 27, 2015 at 3:23:50 PM UTC-4, Rob Curtis wrote:
>
> Hi, 
>
> I can't find any information on this in the documentation;
> Are blob keys guessable? 
> Is it safe to expose stringified blob key to a user?
>
> Thanks
> Rob
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-appengine+unsubscr...@googlegroups.com.
To post to this group, send email to google-appengine@googlegroups.com.
Visit this group at http://groups.google.com/group/google-appengine.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-appengine/160a6d4a-427d-4fba-83c6-c32d98f2d47d%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [google-appengine] Re: Are blob keys guessable?

2015-09-28 Thread Rob Curtis
Excellent, thanks very much.

On Mon, Sep 28, 2015 at 4:22 PM Ryan (Cloud Platform Support) <
rbruy...@google.com> wrote:

> Salutations Rob
>
> "The Blobstore value is assigned a unique, randomly generated key." [1]
>
> The book was written by a Googler and is a good read.
>
> [1] http://ae-book.appspot.com/chapters/blobstore
>
> On Sunday, September 27, 2015 at 3:23:50 PM UTC-4, Rob Curtis wrote:
>>
>> Hi,
>>
>> I can't find any information on this in the documentation;
>> Are blob keys guessable?
>> Is it safe to expose stringified blob key to a user?
>>
>> Thanks
>> Rob
>>
>> --
> You received this message because you are subscribed to a topic in the
> Google Groups "Google App Engine" group.
> To unsubscribe from this topic, visit
> https://groups.google.com/d/topic/google-appengine/B2H5YeiDqLQ/unsubscribe
> .
> To unsubscribe from this group and all its topics, send an email to
> google-appengine+unsubscr...@googlegroups.com.
> To post to this group, send email to google-appengine@googlegroups.com.
> Visit this group at http://groups.google.com/group/google-appengine.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/google-appengine/f5615b93-9c7d-4494-bf4e-17bc4e72f242%40googlegroups.com
> 
> .
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-appengine+unsubscr...@googlegroups.com.
To post to this group, send email to google-appengine@googlegroups.com.
Visit this group at http://groups.google.com/group/google-appengine.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-appengine/CAFk6oqCGp%2BtSSV3vYkOn8GOc%3D1yGkC_3opF2UVyyxE4dXoVmHQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.


Re: [google-appengine] Re: Are blob keys guessable?

2015-09-28 Thread Karl MacMillan
Your question made me think that you were worried about security. I would 
suggest that the randomness provided by the ID assignment is not helpful if you 
are thinking of using these like people often use authentication tokens or 
things like shareable urls for Dropbox or Google docs. The most basic question 
in those scenarios is - if a user has one key what is the likelihood that they 
could guess another valid key, potentially for another users data? Depending on 
how you are enforcing user separation, with datastore keys the answer is 
actually it is quite likely that they could guess another valid key.


In general, you probably want to be handing out security tokens created by a 
standard process combined with HTTPS with the key. But unfortunately getting 
this kind of security right means that you have to thoroughly understand what 
security you are trying to enforce (i.e., threat modeling).


Karl







> On Sep 28, 2015, at 10:33 AM, Rob Curtis  wrote:
> 
> 
> Excellent, thanks very much.
> 
> On Mon, Sep 28, 2015 at 4:22 PM Ryan (Cloud Platform Support) 
> > wrote:
> 
>> Salutations Rob
>> 
>> "The Blobstore value is assigned a unique, randomly generated key." [1]
>> 
>> The book was written by a Googler and is a good read.
>> 
>> [1] http://ae-book.appspot.com/chapters/blobstore
>> 
>> 
>> On Sunday, September 27, 2015 at 3:23:50 PM UTC-4, Rob Curtis wrote:> Hi, I 
>> can't find any information on this in the documentation;
>>> Are blob keys guessable? 
>>> Is it safe to expose stringified blob key to a user?
>>> 
>>> Thanks
>>> Rob
>>> 
>>> 
>>> 
>>> 
>> 
>> 
>> 
>> -- 
>> You received this message because you are subscribed to a topic in the 
>> Google Groups "Google App Engine" group.
>> To unsubscribe from this topic, visit 
>> https://groups.google.com/d/topic/google-appengine/B2H5YeiDqLQ/unsubscribe
>> .
>> To unsubscribe from this group and all its topics, send an email to 
>> google-appengine+unsubscr...@googlegroups.com
>> .
>> To post to this group, send email to google-appengine@googlegroups.com
>> .
>> Visit this group at http://groups.google.com/group/google-appengine
>> .
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/google-appengine/f5615b93-9c7d-4494-bf4e-17bc4e72f242%40googlegroups.com
>> .
>> For more options, visit https://groups.google.com/d/optout
>> .
>> 
> 
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "Google App Engine" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to google-appengine+unsubscr...@googlegroups.com
> .
> To post to this group, send email to google-appengine@googlegroups.com
> .
> Visit this group at http://groups.google.com/group/google-appengine
> .
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/google-appengine/CAFk6oqCGp%2BtSSV3vYkOn8GOc%3D1yGkC_3opF2UVyyxE4dXoVmHQ%40mail.gmail.com
> .
> For more options, visit https://groups.google.com/d/optout
> .

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-appengine+unsubscr...@googlegroups.com.
To post to this group, send email to google-appengine@googlegroups.com.
Visit this group at http://groups.google.com/group/google-appengine.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-appengine/E2100131-534F-467A-A5F5-15C737DB510D%40rakkoon.com.
For more options, visit https://groups.google.com/d/optout.


Re: [google-appengine] Re: Are blob keys guessable?

2015-09-29 Thread Rob Curtis
Hi Karl,

Thanks for your response. I think it's worth finding out how random the key 
is and how large the key space is.

@Ryan, could you elaborate on the randomness of the blobkey? Is it 
guessable given another blobkey?

Thanks
Rob

On Monday, September 28, 2015 at 7:51:18 PM UTC+2, Karl MacMillan wrote:
>
> Your question made me think that you were worried about security. I would 
> suggest that the randomness provided by the ID assignment is not helpful if 
> you are thinking of using these like people often use authentication tokens 
> or things like shareable urls for Dropbox or Google docs. The most basic 
> question in those scenarios is - if a user has one key what is the 
> likelihood that they could guess another valid key, potentially for another 
> users data? Depending on how you are enforcing user separation, with 
> datastore keys the answer is actually it is quite likely that they could 
> guess another valid key.
>
> In general, you probably want to be handing out security tokens created by 
> a standard process combined with HTTPS with the key. But unfortunately 
> getting this kind of security right means that you have to thoroughly 
> understand what security you are trying to enforce (i.e., threat modeling).
>
> Karl
>
>
>
> On Sep 28, 2015, at 10:33 AM, Rob Curtis  > wrote:
>
> Excellent, thanks very much.
>
> On Mon, Sep 28, 2015 at 4:22 PM Ryan (Cloud Platform Support) <
> rbru...@google.com > wrote:
>
>> Salutations Rob
>>
>> "The Blobstore value is assigned a unique, randomly generated key." [1] 
>>
>> The book was written by a Googler and is a good read.
>>
>> [1] http://ae-book.appspot.com/chapters/blobstore 
>>
>> On Sunday, September 27, 2015 at 3:23:50 PM UTC-4, Rob Curtis wrote:
>>>
>>> Hi, 
>>>
>>> I can't find any information on this in the documentation;
>>> Are blob keys guessable? 
>>> Is it safe to expose stringified blob key to a user?
>>>
>>> Thanks
>>> Rob
>>>
>>> -- 
>>
>>

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-appengine+unsubscr...@googlegroups.com.
To post to this group, send email to google-appengine@googlegroups.com.
Visit this group at http://groups.google.com/group/google-appengine.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-appengine/8c87bd70-01dd-4cbb-82f9-f29db484f99d%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [google-appengine] Re: Are blob keys guessable?

2015-09-30 Thread Rob Curtis
Thanks Ryan!




On Tue, Sep 29, 2015 at 10:52 PM Ryan (Cloud Platform Support) <
rbruy...@google.com> wrote:

> I can't speak to how the keys are generated but take a look at the bellow
> keys. They are all the same file uploaded with the same code within a few
> moments of each other. They are unique enough it would take a bruit force
> attack to find a key that could be used:
>
>
> AMIfv951k5FTlQxC-6nljafbiyiRJvWkcVhbuCbBvFcSu6cuf_IV2x1f_OIhkQ-Q1OnPp0HN6hKKbXMS4S_C3dgt5zGhQcWKHOZy2ALjOXVr20o9PhPWT8Wmbu4oxJU7gmAXfVQtttYBheQvpJFbOkH_qnilNdWmh_UYNiZjy_O9ioV_SJnH-PM
>
>
> AMIfv954myPMnDkCeYlHSMUj2noCiBqD-BtaxwZw7Raf_LGg62IOlgOK44PpysRDX5BWEQE5NfzvtS-xVV4BL9kh1eH2lx7l5fWQWJSEQR8vL8JCAOq12A2LuzvUdLK3e9jwXNwx7UCVI1EeUipVXUvABT9tauNJ_DRBBlL8bqNE99QzfXijCFQ
>
>
> AMIfv97UzePJVVqYjnxkAf5d_-tG88gzxp9DcttAeUdZ10NUpMTVmYG2QttDDOSNzztFzHVnRa4rcy-BWeLlN9ZRZzEEXI2TXWUIxn1tzwW_QgYSJP60YWb5bt_khIPnUAWIbij-FQEdMycGDada_it6WoPky5hCS0cjVtAJ4tr2p7NuRxIo2_c
>
>
> AMIfv97MrdriwZpoTkLGxc2sEFwfXIMXwz7Dt3f7IH9Iljb9S57f6amI8ZB8H70VwfkLVOnPvhoDNW7iyTUhiqtafSsFu7L6w3U_qxqzaGJNez8XGLLYeZCwBUWRre-6eeodyTzzohB7zgrEvTp4j9B1K99HU5Secp2cZNW0VW4i9co-o352eqw
>
>
> AMIfv95anW6Qio_APu5La6ZBAs9ZUvaXcO5x8JeN0CW0knMnLtCFSWiAFe0laElTfbguW71WPO7UpKtFK_ijUTSNOgvT6w2T-0YWKawlHaBvyVnDFRZAcdsbGdIeBAcQOnXsJ6D_dDkKLBi73SHTIXB9LTr_oZUbpVOxiLHQOZa8h58ubozYu0E
>
> On Sunday, September 27, 2015 at 3:23:50 PM UTC-4, Rob Curtis wrote:
>
>> Hi,
>>
>> I can't find any information on this in the documentation;
>> Are blob keys guessable?
>> Is it safe to expose stringified blob key to a user?
>>
>> Thanks
>> Rob
>>
>> --
> You received this message because you are subscribed to a topic in the
> Google Groups "Google App Engine" group.
> To unsubscribe from this topic, visit
> https://groups.google.com/d/topic/google-appengine/B2H5YeiDqLQ/unsubscribe
> .
> To unsubscribe from this group and all its topics, send an email to
> google-appengine+unsubscr...@googlegroups.com.
> To post to this group, send email to google-appengine@googlegroups.com.
> Visit this group at http://groups.google.com/group/google-appengine.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/google-appengine/160a6d4a-427d-4fba-83c6-c32d98f2d47d%40googlegroups.com
> 
> .
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-appengine+unsubscr...@googlegroups.com.
To post to this group, send email to google-appengine@googlegroups.com.
Visit this group at http://groups.google.com/group/google-appengine.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-appengine/CAFk6oqC8ORy4t7DtF-CwLk2K-8POJ0aJz78GdhRnxYk6PBnqtg%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.