Bird
Raised Fist0
Raspberry Piprogramming~10 mins

Why security protects deployed IoT devices in Raspberry Pi - Test Your Understanding

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to print a message confirming the device is secure.

Raspberry Pi
print("Device security status: [1]")
Drag options to blanks, or click blank then click option'
Aunknown
Bsecured
Coffline
Dvulnerable
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'vulnerable' or 'offline' which indicate insecurity or no connection.
2fill in blank
medium

Complete the code to check if the device is connected to a secure network.

Raspberry Pi
if network_status == '[1]':
    print("Network is secure")
Drag options to blanks, or click blank then click option'
Auntrusted
Bdisconnected
Csecure
Dunknown
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'disconnected' or 'untrusted' which do not mean secure.
3fill in blank
hard

Fix the error in the code that checks device authentication.

Raspberry Pi
if device.authenticated [1] True:
    print("Access granted")
Drag options to blanks, or click blank then click option'
A==
B=
C!=
D=>
Attempts:
3 left
💡 Hint
Common Mistakes
Using '=' instead of '==' causes syntax errors.
4fill in blank
hard

Fill both blanks to create a dictionary of device statuses for devices with battery level above 20.

Raspberry Pi
device_status = {device_id: status for device_id, status in devices.items() if status['[1]'] > 20 and status['[2]'] == 'active'}
Drag options to blanks, or click blank then click option'
Abattery_level
Bsignal_strength
Cstatus
Ddevice_id
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'signal_strength' or 'device_id' in conditions which are incorrect.
5fill in blank
hard

Fill all three blanks to create a dictionary of device names in uppercase for devices with signal above 50 and status 'online'.

Raspberry Pi
device_names = { [1]: [2].upper() for [3], info in devices.items() if info['signal'] > 50 and info['status'] == 'online'}
Drag options to blanks, or click blank then click option'
Aname.upper()
Binfo['name']
Cdevice_id
Dname
Attempts:
3 left
💡 Hint
Common Mistakes
Mixing up keys and values or using wrong variable names.

Practice

(1/5)
1. Why is it important to secure Raspberry Pi devices used in IoT projects?
easy
A. To reduce the device's power consumption
B. To make the device run faster
C. To prevent unauthorized access and protect data
D. To increase the device's screen brightness

Solution

  1. Step 1: Understand the role of security in IoT

    Security helps keep devices safe from hackers and unauthorized users who might steal data or control the device.
  2. Step 2: Identify the main goal of securing devices

    The main goal is to protect data and device functionality, not to affect speed, brightness, or power use.
  3. Final Answer:

    To prevent unauthorized access and protect data -> Option C
  4. Quick Check:

    Security protects devices = Prevent unauthorized access [OK]
Hint: Security means keeping strangers out and data safe [OK]
Common Mistakes:
  • Confusing security with device performance
  • Thinking security changes hardware features
  • Ignoring data protection importance
2. Which of the following is the correct way to set a password on a Raspberry Pi to improve security?
easy
A. Use the command passwd and enter a strong password
B. Use the command setpassword with any password
C. Change the password by editing /etc/passwd manually
D. No need to set a password if the device is offline

Solution

  1. Step 1: Identify the standard command for changing passwords

    The passwd command is the official and safe way to change passwords on Raspberry Pi.
  2. Step 2: Evaluate other options for correctness

    setpassword is not a valid command; editing /etc/passwd manually is risky and not recommended; offline devices still need passwords for security.
  3. Final Answer:

    Use the command passwd and enter a strong password -> Option A
  4. Quick Check:

    Use passwd command = Correct password setting [OK]
Hint: Use the official passwd command for passwords [OK]
Common Mistakes:
  • Trying to edit system files manually
  • Using non-existent commands
  • Assuming offline means no security needed
3. What will be the output of this Python code running on a Raspberry Pi that checks if a device is secure based on password strength?
password = 'abc123'
if len(password) >= 8 and any(c.isdigit() for c in password) and any(c.isalpha() for c in password):
    print('Secure')
else:
    print('Not Secure')
medium
A. Secure
B. Not Secure
C. SyntaxError
D. No output

Solution

  1. Step 1: Check password length condition

    The password 'abc123' has length 6, which is less than 8, so the first condition fails.
  2. Step 2: Evaluate the full if condition

    Since the length condition is false, the whole condition is false, so the else block runs.
  3. Final Answer:

    Not Secure -> Option B
  4. Quick Check:

    Password length < 8 = Not Secure [OK]
Hint: Check length first; less than 8 means not secure [OK]
Common Mistakes:
  • Ignoring length check
  • Assuming presence of digits and letters is enough
  • Confusing syntax with logic errors
4. Find the error in this Raspberry Pi Python script that tries to block unauthorized IP addresses:
blocked_ips = ['192.168.1.10', '10.0.0.5']
user_ip = '192.168.1.10'
if user_ip = blocked_ips:
    print('Access Denied')
else:
    print('Access Granted')
medium
A. The comparison operator should be '==' instead of '='
B. The list blocked_ips should be a string
C. The variable user_ip should be a list
D. The print statements are missing parentheses

Solution

  1. Step 1: Identify the syntax error in the if statement

    The code uses '=' which is assignment, but comparison needs '==' in Python.
  2. Step 2: Confirm other parts are correct

    blocked_ips is correctly a list; user_ip is a string; print statements have parentheses, so no error there.
  3. Final Answer:

    The comparison operator should be '==' instead of '=' -> Option A
  4. Quick Check:

    Use '==' for comparison, not '=' [OK]
Hint: Use '==' to compare values, '=' assigns [OK]
Common Mistakes:
  • Using '=' instead of '==' in conditions
  • Confusing data types for variables
  • Ignoring Python 3 print syntax
5. You want to secure a Raspberry Pi IoT device deployed in a public place. Which combination of actions best protects it from unauthorized access?
hard
A. Disable password login and leave all ports open for easy access
B. Connect the device to any available Wi-Fi without encryption
C. Use default passwords and disable automatic updates to avoid changes
D. Set a strong password, enable firewall rules, and keep software updated

Solution

  1. Step 1: Identify best security practices for deployed IoT devices

    Strong passwords, firewall rules, and software updates help block unauthorized users and fix security holes.
  2. Step 2: Evaluate other options for risks

    Disabling passwords or updates and using open Wi-Fi expose the device to attacks and data theft.
  3. Final Answer:

    Set a strong password, enable firewall rules, and keep software updated -> Option D
  4. Quick Check:

    Strong password + firewall + updates = Secure device [OK]
Hint: Combine password, firewall, and updates for best security [OK]
Common Mistakes:
  • Thinking disabling passwords improves security
  • Ignoring updates and firewall importance
  • Using unsecured Wi-Fi networks
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard