Some general policy about how to close-vote:
If you think that a question is off-topic, please vote it simply as "off-topic" (with one of the reasons provided, or a custom reason). If enough people (or a moderator) think the same, the question will be put on hold as "off-topic", and no more answers allowed until it is improved and reopened.
This should be done independently of whether or not you want to migrate the question.
This close dialog is only available for users with the "Close question" privilege, which needs 500 reputation on public beta sites like our one.
We might need some more canned reasons here – moderators are able to add some or deactivate the existing ones. I hope some high-rep users will start to use the "other" option and fill in reasons, so we can get some sample of what is needed. In your example the text could be something like this:
This question appears to be off-topic because it is about
software development, not about cryptographic algorithms or protocols.
For users with less reputation (but at least 15), there is a similar flag dialog (under "This question doesn't belong here"), but it doesn't contain the "Other" variant, so you can't add your own reason. (You can use the free-form flag mentioned in the next paragraph instead.)
If you also think that it is a good fit on another Stack Exchange site (not merely better there than here), please do use the "flag for moderator attention" option in addition, and type in the free-text field where you think it should be migrated to, and maybe also a sentence why it fits there. One of the moderators will have a look and decide if it is worth migrating.
In general, we should not migrate questions which are on-topic here (even if they might be slightly better on the other site), nor do we migrate off-topic questions which, while on-topic on the other side, are actually bad questions – these should be simply closed as off-topic, and the asker might get a hint how to ask a better new question on the other site.
Please note that the close-reason dialog changed recently, there is a blog post about this.