It's UWAweek 47

help3007

This forum is provided to promote discussion amongst students enrolled in CITS3007 Secure Coding. If posting a question, it's suggested you check first whether your question is answered in the unit Frequently Asked Questions (FAQ) list, and use the search box (on the right) to see if an answer to your question has already been posted.

Please consider offering answers and suggestions to help other students! And if you fix a problem by following a suggestion here, it would be great if other interested students could see a short "Great, fixed it!"  followup message.

Note that any posts must comply with the UWA Code of Conduct and the UWA Academic Conduct Policy. That means you should (a) treat everyone with respect and courtesy, and (b) not post your solutions to an assessment that's in progress.

If asking a programming question, it's recommended you read How do I ask a good question? If reporting or troubleshooting a bug in software used in the unit, it's recommend you read How to report bugs effectively.
Displaying the 4 articles in this topic
Showing 4 of 170 articles.
Currently 29 other people reading this forum.


 UWA week 21 (1st semester, week 12) ↓
SVG not supported

Login to reply

👍?
helpful
3:59pm Mon 20th May, Spencer K.

Hi I just have a couple questions for the project/submission, First, is the project submission section the sandbox we can use? And will we be able to take multiple "attempts" at submitting because it looks like a test format and I want to be sure before I use it. Another question is about the preconditions, as far as I can tell the user will need to ensure that the preconditions are met and we (the designer) don't need to check them. However it seems that the we need to meet the precondition that "`cipher_text` must point to a buffer of identical length to `plain_text`" as there is no way for a user to supply this. My question is then do we need to check the other preconditions? Also just a small thing about the include for the crypto.h file, when submitting do we use include <crypto.h> instead of "crypto.h"? Thank you.


SVG not supported

Login to reply

👍?
helpful
4:03pm Mon 20th May, Spencer K.

The other two questions still stand, but I just remembered that the user can call the functions and cli is just for testing, please ignore the second question.


SVG not supported

Login to reply

👍?
helpful
4:53pm Mon 20th May, Arran S.

Hi Spencer,

"Spencer Kinder" [email protected] wrote:

Hi I just have a couple questions for the project/submission,

First, is the project submission section the sandbox we can use? And will we be able to take multiple "attempts" at submitting because it looks like a test format and I want to be sure before I use it.

I'll enable the test sandbox shortly. But really, you shouldn't rely on it, and it won't help you much. The project spec and the labs make it clear that part of the work of the project is for students to make use of sanitizers, static analysis, and testing (at a variety of levels of optimization). The testing area will not enable these for you – students should have already completed labs on all these topics, and be able to put the ideas into practice themselves. However, if you're completely stumped for testing ideas, then the test sandbox might provide some inspiration as to some (minimal) tests you could implement.

Another question is about the preconditions, as far as I can tell the user will need to ensure that the preconditions are met and we (the designer) don't need to check them. However it seems that the we need to meet the precondition that "cipher_text must point to a buffer of identical length to plain_text" as there is no way for a user to supply this. My question is then do we need to check the other preconditions?

In general, regarding preconditions: you'll have to interpret this for yourself, I'm afraid. Preconditions were discussed in lectures, and it's now up to you to correctly apply what was covered.

Regarding the cipher_text: I'm not clear why you think a user (I assume you mean "a caller of the functions") has "no way to supply this". Why wouldn't they?

Also just a small thing about the include for the crypto.h file, when submitting do we use include <crypto.h> instead of "crypto.h"?

  From recollection, the spec says <crypto.h>, but in this case, Moodle will accept either.

I hope that helps — let me know if you need any clarification.

cheers,

Arran


SVG not supported

Login to reply

👍?
helpful
5:04pm Mon 20th May, Arran S.

Hi Spencer,

"Spencer Kinder" [email protected] wrote:

The other two questions still stand, but I just remembered that the user can call the functions and cli is just for testing, please ignore the second question.

The cli function is an important deliverable for the project, and is definitely not "just for" testing! You may want to review last week's lecture, since I discussed the cli function and its purpose in a reasonable amount of detail.

Also, I suggest it might be an idea to mentally replace "user" with "developer" when thinking about the project. (Or at least when posting about it.) In the software and illegal narcotics industries, "user" normally means the final end-user of a product. Most users will never see an API – it's developers who do that. (The distinction does become a bit blurred in some cases, since there are products – say, the REST endpoints exposed by enterprises like GitHub, Amazon, Azure, etc. – which essentially are just APIs.)

In this project, we are not told anything at all about end-users or what their requirements might be. Presumably, the API we're implementing is intended to be incorporated into some command-line application, but that's outside the scope of the project.

Cheers,

Arran

The University of Western Australia

Computer Science and Software Engineering

CRICOS Code: 00126G
Written by [email protected]
Powered by history
Feedback always welcome - it makes our software better!
Last modified  8:08AM Aug 25 2024
Privacy policy