Instructions:
You must submit two separate copies (one Word file and one PDF file) using the Assignment Template on Blackboard via the allocated folder. These files must not be in compressed format.
It is your responsibility to check and make sure that you have uploaded both the correct files.
Zero mark will be given if you try to bypass the SafeAssign (e.g. misspell words, remove spaces between words, hide characters, use different character sets, convert text into image or languages other than English or any kind of manipulation).
Email submission will not be accepted.
You are advised to make your work clear and well-presented. This includes filling your information on the cover page.
You must use this template, failing which will result in zero mark.
You MUST show all your work, and text must not be converted into an image, unless specified otherwise by the question.
Late submission will result in ZERO mark.
The work should be your own, copying from students or other resources will result in ZERO mark.
Use Times New Roman font for all your answers. Name: Name:
Name:
ID:
ID:
ID:
Description and Instructions
Case Study Objective:
This case study is an opportunity for you to practice your knowledge and to develop skills of working in teams.
Total Marks = 14 Group Size = 3-4 Members.
One group member (group leader/coordinator) should submit all files: Project Report and Presentation Slides on blackboard. Marks will be given based on your submission and quality of the contents.
Each Project Report will be evaluated according to the marking criteria mentioned in each question section.
Each group need to present their projects in week# 14.
Project Report
Presentation
10 marks
4 marks
Project Report
Presentation
Introduction The global economy went through a difficult period due to COVID-19. Many businesses did struggle, and some unfortunately failed. While COVID-19 brought immense challenges, it also opened doors for new business and innovative opportunities. Peloton’s Rise and Fall
Peloton, the high-end at-home fitness company, initially thrived during the early stages of the pandemic. With gyms closed and people stuck at home, demand for their stationary bikes and fitness classes skyrocketed. However, by 2022, they faced significant challenges. They overestimated demand and built-up excess inventory, leading to stockpiling and financial losses. Competitors like NordicTrack and Echelon offered cheaper alternatives, chipping away at Peloton’s market share. Rising inflation and interest rates squeezed consumer spending, making luxury items like Peloton bikes less affordable. Peloton cut expenses, closed stores, and laid off employees to streamline operations. They launched lower-priced bikes and accessories to broaden their customer base. They invested heavily in their app and content offerings, enhancing the virtual fitness experience. Collaborations with retailers like Dick’s Sporting Goods and Amazon expanded their reach. They focused on building community and the emotional benefits of fitness rather than just pushing product sales. While the road was bumpy, Peloton’s efforts are starting to pay off. They’ve reduced their losses, streamlined operations, and are seeing signs of renewed customer demand. The company has shown resilience and adaptability in the face of adversity.
Note: The above-mentioned case study is just an example; students are supposed to find a case study of business that faced significant challenges during the pandemic but found innovative ways to overcome them.
4 Marks
Learning Outcome(s): CLO1: Explain the interdisciplinary concepts, theories, and trends in ES and their role in supporting business operations.
Question One After selecting your case study, describe it in your own words by using the following points. Clear introduction: It should give the most important information that describes the case study. What is the nature of the product or service they provide? (0.5 mark)
Business process: describe in detail the key business processes, How are they done? (1 mark)
The business situation: It describes their situation at that time based on the business process. What are the changes that are made on theses process to overcome the situation. (1 mark)
The Issues: State the problem/issues, consequences, and any hesitations in the business process. (0.5 mark)
The strategies: State the key success strategies that helped them to navigate the pandemic challenges. (1 mark)
Use one of the tools such as Visio to model the chosen enterprise current process. (1.5 mark) Analyze the model process issues from at least two perspectives such as time and quality perspectives. (1.5 mark) 3 Marks
Learning Outcome(s): CLO4: Design ES architectural models for various business processes.
Question Two Business Process Model and Notation (BPMN) is a standardized diagramming system used to visualize business processes.
2 Marks
Learning Outcome(s):
CLO3: Discuss the issues and challenges associated with implementing ES and their impacts on corporate enterprises.
Question Three Propose at least two suggestions for improving the process of your selected company from equipment, employees, IT & IS technologies perspectives. How your suggestions will solve business process issues. (1 mark)
Note: Your provided suggestions or solutions should be different than the solutions that the company have used to overcome the pandemic. (1 mark)
1 Marks
Learning Outcome(s):
CLO3: Discuss the issues and challenges associated with implementing ES and their impacts on corporate enterprises.
Question Four Based on your information and the course materials, what innovative approaches can enterprises adopt to strengthen their disaster recovery plans? (1 mark)
Category: Programming
The topic is designing and programming a metal detection system, using the NI-Mu
The topic is designing and programming a metal detection system, using the NI-Multisim and Breadboard. program, and also a motivational project consisting of 5000 words.
You are to write a program that will attempt to optimize the time it takes to pr
You are to write a program that will attempt to optimize the time it takes to process customers in check-
out lines inside a grocery store. You will use the Queue data structure for this assignment.
The general idea is to always place customers in the best checkout line possible. This will be based on
the total number of customers and the number of items in each cart being processed. The time to serve
a single customer is calculated by the following formula:
t = 45 + 5*ni;
where: t, time in seconds that it takes to serve a customer,
ni, the number of items in the customers cart.
A store consists of 1 or more check-out lines defined by:
• n = number of normal check-out lines
• f = number of express check-out lines (less than or equal to x items)
A store could have up to 4 fast check-out lines.
Customers at the store may have many items in their cart or only a few. Each new customer will be
added to the check-out line with the cumulative least amount of time in front of it (the shortest line).
Any customer may optionally enter one of f express lines if they have less than or equal x items in the
cart. It should be noted that they do not need to enter an express line if another check-out line would
result in a shorter service time. Customers with more than x items must enter one of the other n check-
out lines in the store. The total number of check-out lines will be equal to n + f;
Example Case
Example Data: x = 10, n = 2, f = 1 and 8 customers and carts come to the checkout in the following
order: 6,7,45,10,11,21,2,4 (the number is the number of items in the cart). You can assume they all
arrive at the check-out at the same time for this lab. When placed into the optimum check-out line the
following check-out lines (queues) will result. Part A
You need to output your optimum starting case for all of the check-out lines in the store and then
calculate the amount of time it will take for the store to be empty of all customers. Your output must
show each Queue in order. An example output is shown below:
Part B
Simulate the removal of customers from each check-out by servicing the customers. It is suggested you
set up a loop to calculate the state of the Checkout lines after each second, but only display lines every
30 or 60 seconds simulated. Once the amount of time has passed required to service the customer at
the start of the Queue, the customer must be removed and processing will continue with the next
customer. For the above case we would start at time = 0 and continue until time = 330 s at which point
all customers would have been serviced. It is suggested that you not show the output after every
second, but instead after every 30 or 60 seconds. The example below shows every 60 seconds for the
same data that was used in part A. In your solution you must use a simulation step of 30 seconds.
Suggested Steps:
1. Create a new project in IntelliJ.
2. Add the example data (Customer_Example.txt) and evaluation data set (Customer.txt) to the
project.
3.AddatoStringmethod to theLinkedQueue.javathat will print all the items in the Queue on a
single line.
4. Add a new class to the project to hold each Customer. Add a property for the number of items
in the cart and a method to calculate how long it will take to serve a customer and any other
properties and methods you feel are appropriate.
5. Override the toString method to display the contents of the object neatly (in my example the
Customer will print the number of items and the time it will take to serve a customer).
6. Inside the main class you will need to create a LinkedQueue for each of the checkout lines.
You will also need to track the current wait time for each queue.
7. Read the check-out line and customer information from the data file and add them to the
correct Queue.
8. Output your results for Part A and verify the test case and the Customer data case.
9. Solve Part B by using a loop to process all the lines simultaneously one second at a time.
Remove the customer when the loop counter equals the time to process for that check-out line.
Hints
• Use the isEmpty() method of the LinkedQueue to decide if queue has customers.
• Use the size() method of LinkedQueue to indicate the number of customers in any checkout
line.
NOTE: This is a college-level assignment DO NOT use high-level of programming to write the code. The code should be hand-written DO NOT use any AI tools to write the code. Please read and follow all the instructions carefully. Moreover, I have attached all the screenshots and files for the required information to write the code. Please find it attached!
I have two more files to attach but unable to attach it I’ll attached in the chat.
Table of Contents Technical Discussion…………………………………..
Table of Contents Technical Discussion……………………………………………………………………………………………………… 2
POP3S- Linux Dovecot………………………………………………………………………………………………… 3
IMAPS…………………………………………………………………………………………………………………………. 3
SMTP-IIS and Postfix…………………………………………………………………………………………………… 4
DNS……………………………………………………………………………………………………………………………. 5
Hardening Recommendations…………………………………………………………………………………. 6
POP3S………………………………………………………………………………………………………………………… 6
Hardening Recommendation #1 -update iptables to enable SSL traffic through the firewall.6
Hardening Recommendation #2 – require the user’s authentication with a password login.7
Hardening Recommendation #3- update iptables to enable IMAP ports from Dovecot. 7
IMAPS…………………………………………………………………………………………………………………………. 8
Hardening Recommendation #1 – Port 143 is insecure needs to be disabled or changed to port 9938
Hardening Recommendation #2 – Enable enyrpted login………………………………………….. 8
Hardening Recommendation #3 – Reconfigure SSL Certifications…………………………….. 8
SMTP………………………………………………………………………………………………………………………….. 9
Hardening Recommendation #1- Enable TLS encryption for authentication………………. 9
Hardening Recommendation #2 – Enable and configure filtering polices that protects against spam9
Hardening Recommendation #3 – Enforce antivirus scanning of emails………………….. 10
Hardening Recommendation #1- Incoming email configuration……………………………… 10
Hardening Recommendation #2- Basic hardening………………………………………………….. 10
Disable VRFY (verify)…………………………………………………………………………………………… 10
Hardening Recommendation #3- Prevent unwanted email relaying…………………………. 10
DNS…………………………………………………………………………………………………………………………. 11
Hardening Recommendation #1 – Utilize port 53…………………………………………………….. 11
Hardening Recommendation #2 – Use internal and external dns……………………………… 11
Hardening Recommendation #3 – Disable inactive protocals…………………………………. 11
Hardening Recommendation #1 – Implement DNSSEC…………………………………………… 12
Hardening Recommendation #2 – Restart BIND……………………………………………………… 12
Hardening Recommendation #3 – Configure Local Files…………………………………………. 12
References………………………………………………………………………………………………………………….. 13Technical Discussion
POP3S- Linux Dovecot
POP3s is also known as “Post Office Protocal 3”, which is most commonly used protocal for receiving emails over the web” (Rahul Awati, 1). This standard protocal is maily supported by email severs as well as their client support. POP3s “is used to receive emails from a remote server and send to a local client”(Rahul Awati, 1). This is a one way client and sever protocal that receives and holds emails on a sever. Well, how does POP3S work, POP3s listens in on TCP port 110. Then, when a client wants to POP3s for retrivel a TCP connection is established with the sever host. When the connection with the sever is established the POP3s sever sends greeting, then it goes into the authorization stage.
Some advantages of POP3s are being able to “access emails without internet connection, and less sever space” (Anon, 2019). Clients are able to access already dowloaded emails on their devices with this sever without needing an internet connection. However, you will need an network connection to receive any new emails. POP3S Linux Dovecot is “ an open source IMAP and POP3 sever for linux systems” (Anon 2019). Dovecot “primarly aims to be lightweight, fast, and easy to set up an open source mail server”(Anon 2019). Dovecot “is a mail delivery agent sometimes used with POP3s, and it is written with security primairily in mind”(Anon 2019). Dovecot supports mailbox formats such as mbox or Maildir and is simple to install. IMAPS
IMAPS is an extension of the Internet Message Access Protocol (IMAP) that incorporates encryption for secure email communication. It operates over a secure channel, typically using SSL/TLS protocols, to ensure the confidentiality and integrity of data exchanged between the email client and server. IMAPS is designed to provide a secure method for accessing and managing email messages. It builds upon IMAP, adding a layer of encryption to protect sensitive information, such as login credentials and email content, during transmission. The default port number for IMAPS is 993. This port is dedicated to secure IMAP communication. In your course, understanding this default port number is crucial when configuring email clients for secure access.
IMAPS relies on SSL/TLS encryption to establish a secure communication channel between the email client and server. This encryption safeguards against eavesdropping and man-in-the-middle attacks, ensuring the confidentiality of user data. IMAPS employs various authentication mechanisms, including username and password, to verify the identity of users. SSL/TLS certificates are also used to authenticate the server, adding an extra layer of security. In conclusion, a comprehensive understanding of IMAPS involves grasping its role in securing email communication, the default port number (993), the use of SSL/TLS encryption, and the applications and services that leverage this protocol. As students in your course explore secure email configurations, this knowledge will be essential for implementing and troubleshooting secure email access.
SMTP-IIS and Postfix
SMTP (Simple Mail Transfer Protocol) serves as the backbone for email communication, enabling the transfer of electronic messages across networks. In our course, we delve into the technical intricacies of SMTP, focusing on default port numbers and the diverse applications and services that leverage this protocol. SMTP primarily operates over two port numbers, each serving a distinct purpose. Port 25 is the default port for SMTP, responsible for relaying emails between servers. It acts as the standard communication channel for email transmission. However, note that due to security concerns and abuse, some ISPs block this port for residential users. Port 587 is designed as an alternative to port 25, port 587 is dedicated to email submission by end-users to a mail server. It ensures a secure and authenticated communication channel, often requiring user credentials for access. Port 587 is pivotal in preventing unauthorized access and spam. SMTP finds application in various domains, contributing to seamless communication in the digital landscape. SMTP plays a central role in mail servers, facilitating the relay of emails between servers.
Servers utilize SMTP for communication both within the same server and with external servers, creating a unified email ecosystem. Many web applications integrate SMTP to send automated emails such as contact form submissions, password resets, or notifications. This ensures reliable email delivery without relying solely on the user’s email client. In conclusion, by delving into default port numbers and its applications in diverse services, our course equips students with a practical and in-depth knowledge of SMTP, essential for navigating the complexities of modern email communication.
DNS
DNS (Domain Name System) “serves as a foundational pillar of the internet, translating human-readable domain names into machine-readable IP addresses”(Faster Capital, 2024). In our course, we aim for a profound technical exploration of DNS, emphasizing default port numbers and the spectrum of applications and services reliant on this critical protocol. DNS utilizes one primary port number, serving a specific function in the DNS communication process Port 53 is the default port for DNS queries and responses. DNS clients and servers communicate over port 53, using it as the standard channel for resolving domain names to IP addresses and vice versa. Both TCP and UDP are employed, with UDP being more common for regular queries due to its lower overhead. DNS underpins a plethora of applications and services, showcasing its indispensable role in internet functionality and connectivity. DNS is crucial in the email ecosystem. It aids in the resolution of mail server addresses, ensuring emails are correctly routed to the intended recipients. MX (Mail Exchange) records are particularly significant in this context. DNS is fundamental in network infrastructure, especially in environments utilizing Active Directory. It enables the identification and location of domain controllers, facilitating seamless authentication and resource access within a network. In the realm of IIS, DNS plays a crucial role in facilitating the proper functioning and accessibility of websites. In summary, our course goes beyond a surface-level understanding of DNS, emphasizing the technical differences, default port numbers, and its extensive applications across various services. By comprehending DNS in this depth, students gain the insights necessary to navigate the complexities of modern network communication and internet infrastructure.
Hardening Recommendations
POP3S
Hardening Recommendation #1 -update iptables to enable SSL traffic through the firewall.
Enabling SSL traffic through the firewall allows the firewall to decrypt and inspect traffic. “It prevents data breaches by finding hidden malware and stopping hackers from sneaking past defenses” (Zscaler,4). To update iptables to enable SSL traffic through the firewall you must first open your command prompt. Once the client is in the command prom you can type the code
-sudo ufw app list This route allows you to be able to configure traffic through the POP3s firewall. Hardening Recommendation #2 – require the user’s authentication with a password login.
It is necessary to require the user’s authentication with a password login because “It serves as a crucial line of defense against unauthorized access and protects sensitive information from falling into the wrong hands” (Sudhanshu Agarwal, 1). “The primary purpose of username and password authentication is to ensure only authorized individuals with valid credentials can access restricted resources.” (Sudhanshu Agarwal, 5). To require user’s authentication, you will have to type a specific code into your command prompt.
– Sudo ufw app info “Dovecot IMAP.”
Hardening Recommendation #3- update iptables to enable IMAP ports from Dovecot It is necessary to update iptables to enable IMAP ports from dovecot because it secures the networks access. The defaulted port in IMAP is port 143, and for the secure socket layer protocol. When changing IMAP port for Dovecot you can do it the most basic way, which is to edit the file/etc/dovecot/dovecot. You can also time the same line in the command prompt and it should successfully enable IMAP port from Dovecot. IMAPS
Hardening Recommendation #1 – Port 143 is insecure needs to be disabled or changed to port 993
It is necessary to disable or change ports because “if a cyber attacker gains physical access to an active port, they will be able to connect to the network and potentially launch attacks or gain unauthorized access”( Navneet Trievdi, 2022). This is why it is required to disable port 143 because it is insecure and needs to be changed to port 993, it helps mitigate security risk. You can disable or change port by using command prompt line ,”openssl s_client -showcerts -connect imap.foo.com:993 –crlf”(Phillip Clark, 2020).
Hardening Recommendation #2 – Enable enyrpted login
Enabling encrypt login because, “encryption helps protect the data on your device so it can only be accessed by people who have authorization” (Microsoft Support). Encryption provides an extra layer of security for any users that access their emails from a public network. “IMAP sever password authentication is an effective and trustworthy way to protect your email account” (Imap Sever ,2). Enabling encrypted login can be done through settings or the command prompt. Hardening Recommendation #3 – Reconfigure SSL Certifications
Reconfiguring secure socket layer certifications “ allows to keep their online transactionns and keep customer information private and secure.” The secure socket layer “keeps internet connections secure and prvents criminals from reading or modifying information transfered between two systems.”(USA kaspersky ,2020). Reconfiguring ssl certifications is necessary because it constantly needs to be reevaluated to make sure things stay accurate. When reconfiguring the ssl certifications you can do this by searching for the Internet email settings in the command line, then allowing encrtpted connection. SMTP
Windows: Hardening Recommendation #1- Enable TLS encryption for authentication
Enabling TLS encryption for authentication, “ensures that data transmitted between them is encrytpted with secure algorithms and not viewable by third parties” (Internet Society, 3). An SMTPS sever with “SSL/ TLS starts a connection with the receving sever passing only encrypted information- thus making it more difficult to break” (Turbo SMTP , 2024). Command line code to enable TLS encryption for” authetication is febootimail –SSL febootimail -SSL -TLS SSLv3 febootimail -SSL -TLS 1.2”( SSL Command Line, 2019). ”
Hardening Recommendation #2 – Enable and configure filtering polices that protects against spam
Enabling and configuring filtering policies that protects against spam “because spam filters protect against many threats, including unwanted spam, emails, phishing malware, fake invoices, and other risky content” (Iton Demand, 2023). “With SMTPS spam scan policies you can specify filter criteria, action, and encryption for senders and recepients email” (XG firewall). “Go to Email > Policies, click Add a policy and then click SMTP spam scan. Enter a name. Specify the senders’ and recipients’ email address groups or domain groups. Specify an exact match or keyword match. Specify the filter criteria based on which policy applies the specified action.”(Sophos Firewall 2023).
Hardening Recommendation #3 – Enforce antivirus scanning of emails
Enforcing antivirus scanning of emails is necessary because users can protect their data and devices from potential threats. Linux: Hardening Recommendation #1- Incoming email configuration
“postconf -e smtpd_helo_required=yes
People usually greet each other by saying ‘hello’ or something similar. Mail servers do this with a HELO command, or EHLO, the extended version. Servers that are not using this are typically not properly configured, or simply sending spam”(Michal Boelen, 2018). Hardening Recommendation #2- Basic hardening
“Disable VRFY (verify)
The VRFY command is short for ‘verify’. It can be used to see if an email address is valid on the mail server. While this is great for troubleshooting, it also allows others to make educated guesses if an account exists and deliver possibly spam. The VRFY command is not normally not needed for delivery between two mail servers
postconf -e disable_vrfy_command=yes”(Micheal Boelen).
Hardening Recommendation #3- Prevent unwanted email relaying
“An open relay is a system that accepts email from all systems and forwards them. Spammers use these open relays to send out their messages, (Micheal Boelen).”
“mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128” postconf -e mynetworks=”127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128″
DNS
Linux: Hardening Recommendation #1 – Utilize port 53
It’s necessary to utilize unused ports because “it allows computers to easily different between different kinds of traffic: emails go to a different port than webpages, even though both reach a computer over the same internet connection” (Cloudflare 2019). DNS “is an essential process for modern internet, it matches human relatable domain names to machine readable IP addresses enabling users to load websites and applications without memorization for a long list of IP addresses”(Cloudflare 2019). When utilizing port use command line “sudo ufw allow 53/tcp
$ sudo ufw allow 53/udp”( Vivek Gite, 2023).
Hardening Recommendation #2 – Use internal and external dns
Using the internal and external dns is necessary because, “ the internal dns servers can answer questions about internal host. The external dns responds to questions from the internet, feign ignorance about the most internal hosts, but answers questions about a few hosts meant to be exposed to the internet” (Marnix Van Ammers ,2019).
Hardening Recommendation #3 – Disable inactive protocals
Disabling inactive protocols prevents the risk of attacks and keeps a computers system up to date. Not disabling inactive protocols can compromise the network. Therefore, all services should be removed. Hardening Recommendation #1 – Implement DNSSEC
Implementing DNSSEC is necessary because, “ if any part of the chain is broken, users can’t trust the records were requesting because a man in the middle can alter records and direct users to any IP address they want” (Cloudflare, 2019). To add the dnssec first you would have to go to settings, you should see the dnssec protocol and from there users can enable. Hardening Recommendation #2 – Restart BIND
In Dns BIND “can be used to run a caching DNS sever on the authoritative name sever, and provides features like loading balancing, notify, dynamic update, and split DNS” (IMBP company). When restating BIND, users must follow the command line” # service named start, # service named restart”(Vivek Gite, 2013).
Hardening Recommendation #3 – Configure Local Files
Configuring local files is necessary because it provides security, it makes a complex system. This system allows for files to be organized, managed, and customizable. To configure local files in DNS, “/etc/resolv.conf,”(Oracle Corporation, 2020). References
Boelen, M. (2018, July 6). Postfix hardening guide for security and privacy. Linux Audit. https://linux-audit.com/postfix-hardening-guide-fo…
Awati, R. (2021, October). What is POP3 (Post Office Protocol 3)? WhatIs.com. https://www.techtarget.com/whatis/definition/POP3-…
What is POP3? (2019). WhatIsMyIPAddress.com. https://whatismyipaddress.com/pop3
Dovecot manual — Dovecot documentation. (n.d.). Doc.dovecot.org. https://doc.dovecot.org/
What Is SSL Decryption? | Define & Core Concepts | Zscaler. (n.d.). Www.zscaler.com. https://www.zscaler.com/resources/security-terms-g…
Customizing Dovecot | Directadmin Docs. (n.d.). Docs.directadmin.com. Retrieved March 3, 2024, from https://docs.directadmin.com/other-hosting-service…
What is an SSL certificate – Definition and Explanation. (2023, April 19). Usa.kaspersky.com. https://usa.kaspersky.com/resource-center/definiti…
What is TLS & How Does it Work? | ISOC Internet Society. (n.d.). Internet Society. https://www.internetsociety.org/deploy360/tls/basi…
Add an SMTP spam scan policy. (n.d.). Docs.sophos.com. Retrieved March 3, 2024, from https://docs.sophos.com/nsg/sophos-firewall/17.5/H…
DNS Configuration and Data Files (System Administration Guide: Naming and Directory Services (DNS, NIS, and LDAP)). (n.d.). Docs.oracle.com. Retrieved March 3, 2024, from https://docs.oracle.com/cd/E19683-01/806-4077/6jd6…
Management, N.-I. D. and T. (n.d.). BIND DNS: Pros, Cons and Alternatives. NS1. Retrieved March 3, 2024, from https://ns1.com/resources/bind-dns-pros-cons-and-a…
What is internal DNS and external DNS? (n.d.). Quora. Retrieved March 3, 2024, from https://www.quora.com/What-is-internal-DNS-and-ext…
Boelen, M. (n.d.). Postfix Hardening Guide for Security and Privacy – Linux Audit. Linux-Audit.com. https://linux-audit.com/postfix-hardening-guide-fo…
Add an SMTP spam scan policy. (n.d.). Docs.sophos.com. https://docs.sophos.com/nsg/sophos-firewall/17.5/H…
Addressing Common Issues. (n.d.). FasterCapital. Retrieved March 3, 2024, from https://fastercapital.com/startup-topic/Addressing…
Wallen, J. (2021, March 30). CyberPanel makes one-click installing of web-hosted apps and services simple. TechRepublic. https://www.techrepublic.com/article/cyberpanel-ma…
Boelen, M. (n.d.). Postfix Hardening Guide for Security and Privacy – Linux Audit. Linux-Audit.com. https://linux-audit.com/postfix-hardening-guide-fo…
The decision is made by your university to admit more students the following yea
The decision is made by your university to admit more students the following year. What economic considerations would it have taken into account while making its decision? Would the university have used the “economic way of thinking” in reaching its decision? Would the university have made its decision on the margin?
In this homework assignment, you’ll gain experience implementing backpropagation
In this homework assignment, you’ll gain experience implementing backpropagation for multi-layer perceptrons (MLPs) and convolutional neural networks. You don’t need a GPU to complete this homework assignment. The purpose of this assignment is to get hands on experience with backprop and convolutional networks. As in the previous assignment, I recommend you use Anaconda python to complete this assignment if working locally. You can also use Google Colab for the assignment.
To get started, download the starter code which will walk you through both parts of this assignment.
Part 1: Implementing a Multi-layer Neural Network (50 points)
In the first part of the assignment, you’ll implement a multi-layer neural network to predict image pixel values (the 3D RGB color values of the image) given the 2D (x,y) coordinates of the image. You’ll also experiment with performing various transformations of the input coordinates to explore the impact on training.
The part1 folder in the starter code will walk you through the steps to complete this part of the assignment.
Part 2: Implementing a Convolutional Neural Network (50 points)
In the second part of the homework assignment (in the part2 folder), you’ll implement a simple convolutional neural network in numpy. You’ll be given a few images of digits and predict a value for each image using a regression-style loss.
You should not use any functions that implement convolution, gradient descent, etc. You do not have to handle padding within your convolution and should directly write out the convolution as we discussed it in class. You’ll then implement the training process for your simple CNN network and show the result of training. Finally, you’ll try to synthesize digits using your network and perform some analysis of the net.
Submission should be a SINGLE PDF file only. If you want to handwrite some answe
Submission should be a SINGLE PDF file only. If you want to handwrite some answers, you
can take clear pictures of legibly written handwritten pages and put them in a PDF .
1) (3 marks) You are planning to do RSA encryption. You chose 𝑁 = 55 and the public
key as 𝑒 = 3. Answer the following:
a. How much is
j(𝑁)?
b. Write an equation to show the relation between 𝑒 and the private key 𝑑.
c. How much would be the private key 𝑑? (You can use this website to solve this
part-> https://planetcalc.com/3311/ )
2) (7 marks) In this problem, you need to verify digital signatures for five strings that I
have signed. We use the same library as earlier: pycryptodome (python version 3.5
or greater). In particular, I have signed each message using the code below
(chosen_str is a string variable)
h = SHA256.new(chosen_str.encode(‘UTF-8’))
signature = pss.new(private_key).sign(h)
signature = b64encode(signature).decode(“utf-8”)
You can look at the documentation here (which includes how to create signature and
how to verify them):
https://www.pycryptodome.org/src/signature/pkcs1_p…
You should do the hash as I have done in the code above. You task is to verify the
signature for each of the five messages that you get from me. My public key
mypublickeyRSA.pem is provided with this PDF on canvas itself.
Each of you will be provided a (different) json file by email. The file has five
messages in an array and five b64encoded signatures in another array. Look at your
previous homework code for how to decode a b6encoded string. The first signature
in the signature array corresponds to the first message in the messages array,
second corresponds to second, and so on.
Submission should be a SINGLE PDF file only. If you want to handwrite some answe
Submission should be a SINGLE PDF file only. If you want to handwrite some answers, you
can take clear pictures of legibly written handwritten pages and put them in a PDF .
1) (3 marks) You are planning to do RSA encryption. You chose ? = 55 and the public
key as ? = 3. Answer the following:
a. How much is
j(?)?
b. Write an equation to show the relation between ? and the private key ?.
c. How much would be the private key ?? (You can use this website to solve this
part-> https://planetcalc.com/3311/ )
2) (7 marks) In this problem, you need to verify digital signatures for five strings that I
have signed. We use the same library as earlier: pycryptodome (python version 3.5
or greater). In particular, I have signed each message using the code below
(chosen_str is a string variable)
h = SHA256.new(chosen_str.encode(‘UTF-8’))
signature = pss.new(private_key).sign(h)
signature = b64encode(signature).decode(“utf-8”)
You can look at the documentation here (which includes how to create signature and
how to verify them):
https://www.pycryptodome.org/src/signature/pkcs1_p…
You should do the hash as I have done in the code above. You task is to verify the
signature for each of the five messages that you get from me. My public key
mypublickeyRSA.pem is provided with this PDF on canvas itself.
Each of you will be provided a (different) json file by email. The file has five
messages in an array and five b64encoded signatures in another array. Look at your
previous homework code for how to decode a b6encoded string. The first signature
in the signature array corresponds to the first message in the messages array,
second corresponds to second, and so on.
Write a 5-8 page essay using what you have learned from reading Michael Woolridg
Write a 5-8 page essay using what you have learned from reading Michael Woolridge’s A Brief History of Artificial Intelligence. Choose at least five major figures, inventions, issues, or events in the history of AI discussed by Woolridge. Discuss the key issues, questions, or controversies raised by the figures, inventions, or events you choose to discuss in your essay.
Find Five Additional Sources: In addition to using Woolridge as your major source, you must clearly and explicitly quote, link and cite at least 5 other sources of information for your assignment. Use journalistic, academic, or governmental sources found online from major news publishers, institutions, or organizations. Use your student subscriiption to the New York Times and the Wall Street Journal to find sources. Essays that do not quote or make significant use of credible source material will not be accepted. You will be graded on the quality and the quantity of the source materials you use to write your essays.
Things to remember:
• Essays that do not make significant use of A Brief History of Artificial Intelligence will not be accepted. Use your own words and brief quotations and key points from A Brief History of AI as much as possible.
• Do not plagiarize, use quotation marks, and cite your sources clearly using a standard form of citation: Chicago, MLA, APA. Cite page numbers for Woolridge (no matter which form of citation you choose.)
• Use links in the text if you refer to online sources.
• Do not use unattributed AI-generated content.
• Submit your work as a PDF on Brightspace before midnight
on the due date listed above.
• Late submissions will be penalized.
A note on AI-generated content: Please remember that plagiarism and uncited use of AI text-generated content is unacceptable. Use your own words as much as possible! Assignments flagged by Turnitin for significant use of uncited, unoriginal, plagiarized or AI-generated content will not be accepted for credit.
You are to complete the starting code that has been provided for aSortedLinkedLi
You are to complete the starting code that has been provided for aSortedLinkedListthat will
store a collection of items and maintain the order of the items at all times. You will need to
add functionality for the following methods:
• add
• remove
• toString
In case of the add method, the elements must be added in sorted order. When you add the
following words in this order [Bob, Carol, Aaron, Alex, Zaphod], the list when printed using the
toString method will appear as [Aaron, Alex, Bob, Carol, Zaphod]. You may not call any sort
algorithm to achieve this result. Your goal is to ensure that the list is always in a sorted state.
With the remove method, the element specified must be removed from the list and the current
order maintained.
The class provided has been provided as a generic class. It will work with any object data type
class that is Comparable. In your main method you must demonstrate that this works using
two different data types that add elements in random order to the list. The sorting order in all
cases will be ascending alphabetic order (‘A’ at the top, lowest integer at the top, etc…).
Once you have demonstrated that your class can handle two different data types (make one of
them String), you will need to compare the performance of the class against the standard java
ArrayList class. To achieve equivalent functionality with the ArrayList, add each name to
the list and then call Collections.sort method after each each item is added (ythis must be
placed in the loop that is adding the items. This will ensure that we are comparing the same
functionality in both classes (always sorted).
The main program as provided will read names from a text file (baby names) and place the
content into an array. It is suggested you use this data for comparison purposes for the String
data type.
Suggested Steps:
1. Create an add method for the SortedLinkedList
2. Test the add method from main to ensure elements are added in sorted order. To do
this you will need to complete the toString method.
3. Create a remove method for the SortedLinkedList class
4. Test the remove method from main to ensure elements are removed from the list and
that after removal the list is still in sorted order.
5. Add a Discussion (in a comment) to the top of the file that contains your main method
discussing the results obtained. Answer each of the following questions:
o Do you notice any significant performance difference between the
SortedLinkedList
Explain the differences using Big O notation for the different algorithms.
o Do you notice any significant performance difference between these two
collections when removing items? Explain the differences using Big O notation
for the different algorithms.
o When would you choose to use a SortedLinkedList over an ArrayList based
on the results of this assignment?
NOTE: This is a college-level project do not use high-level programming to write the code. The code should be hand-written and do not use any AI tools to write the code. Please read and follow all the instructions properly. Please find all files attached and use for the information and writing the code.