The current handling of `'Arch'` and `'Platform'` in relation to target is that they are both called `'Arch'` or `'Platform'` in the main hash or the target specific Hashes.  Have the term Requirements in both places would be consistent with how Arch and Platform is.  One thing I would recommend is it's not immediately obvious that such a general term, like 'Requirements' is tied to BrowserExploitation.  You may want to give the key a name that is more obviously tied to BrowserExploitServer.